Documentation/fr/texidocs/guitar-slides.texidoc
Documentation/fr/texidocs/guitar-strum-rhythms.texidoc
Documentation/fr/texidocs/hairpins-with-different-line-styles.texidoc
+Documentation/fr/texidocs/hammer-on-and-pull-off-using-chords.texidoc
+Documentation/fr/texidocs/hammer-on-and-pull-off-using-voices.texidoc
+Documentation/fr/texidocs/hammer-on-and-pull-off.texidoc
Documentation/fr/texidocs/heavily-customized-polymetric-time-signatures.texidoc
Documentation/fr/texidocs/hiding-accidentals-on-tied-notes-at-the-start-of-a-new-system.texidoc
Documentation/fr/texidocs/hiding-the-extender-line-for-text-dynamics.texidoc
Documentation/snippets/guitar-slides.ly
Documentation/snippets/guitar-strum-rhythms.ly
Documentation/snippets/hairpins-with-different-line-styles.ly
+Documentation/snippets/hammer-on-and-pull-off-using-chords.ly
+Documentation/snippets/hammer-on-and-pull-off-using-voices.ly
+Documentation/snippets/hammer-on-and-pull-off.ly
Documentation/snippets/headword.snippet-list
Documentation/snippets/heavily-customized-polymetric-time-signatures.ly
Documentation/snippets/hiding-accidentals-on-tied-notes-at-the-start-of-a-new-system.ly
Documentation/snippets/new/chords-headword.ly
Documentation/snippets/new/compound-time-signatures.ly
Documentation/snippets/new/conducting-signs,-measure-grouping-signs.ly
+Documentation/snippets/new/creating-a-delayed-turn.ly
Documentation/snippets/new/creating-a-sequence-of-notes-on-various-pitches.ly
Documentation/snippets/new/creating-double-digit-fingerings.ly
Documentation/snippets/new/creating-real-parenthesized-dynamics.ly
Documentation/snippets/new/generating-custom-flags.ly
Documentation/snippets/new/glissandi-can-skip-grobs.ly
Documentation/snippets/new/guitar-slides.ly
+Documentation/snippets/new/hammer-on-and-pull-off-using-chords.ly
+Documentation/snippets/new/hammer-on-and-pull-off-using-voices.ly
+Documentation/snippets/new/hammer-on-and-pull-off.ly
Documentation/snippets/new/heavily-customized-polymetric-time-signatures.ly
Documentation/snippets/new/horizontally-aligning-custom-dynamics-e.g.-sempre-pp,-piu-f,-subito-p.ly
Documentation/snippets/new/how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-1.ly
input/regression/header-bookpart-multiple.ly
input/regression/header-cyclic-reference.ly
input/regression/header-score-multiple.ly
+input/regression/header-score-reordered.ly
input/regression/header-toplevel-multiple.ly
input/regression/horizontal-bracket-break.ly
input/regression/horizontal-bracket-tweak.ly
input/regression/repeat-unfold-all.ly
input/regression/repeat-unfold-tremolo.ly
input/regression/repeat-unfold.ly
+input/regression/repeat-volta-segno.ly
input/regression/repeat-volta-skip-alternatives.ly
input/regression/repeat-volta.ly
input/regression/rest-collision-beam-note.ly
@end ignore
+@item
+The PostScript functionality of stroke adjustment is no longer
+applied automatically but left to the discretion of the PostScript
+device (by default, Ghostscript uses it for resolutions up to
+150dpi when generating raster images). When it is enabled, a more
+complex drawing algorithm designed to benefit from stroke
+adjustment is employed mostly for stems and bar lines.
+
+Stroke adjustment can be forced by specifying the command line
+option @samp{-dstrokeadjust} to LilyPond. When generating
+@code{PDF} files, this will usually result in markedly better
+looking @code{PDF} previews but significantly larger file size.
+Print quality at high resolutions will be unaffected.
+
@item
There is now a new context type called @code{NullVoice} which, while not
appearing in the printed output, can be used to align lyrics. This can
@end smallexample
(If you don't recognize what this file is, then you don't need it.)
+An alternate site for obtaining these files is available:
+@smallexample
+@uref{http://www.et.byu.edu/~sorensen/ubuntu-LilyDev-remix-2.6.iso}
+@uref{http://www.et.byu.edu/~sorensen/ubuntu-LilyDev-remix-2.6.iso.md5}
+@end smallexample
+
@node Installing LilyDev in VirtualBox
@unnumberedsubsec Installing LilyDev in VirtualBox
but start the virtual machine proper. LilyDev is now installed and
running!
+@item
+The current version of LilyPond requires the texlive-lang-cyrillic
+package. This package is not part of LilyDev 2.6. Add the package
+to LilyDev with:
+
+@example
+sudo apt-get install texlive-lang-cyrillic
+@end example
+
+
@end enumerate
@knownissues
<form action="http://google.com/search"
method="get"
name="search"
- onSubmit="search.q.value='site:lilypond.org/doc/v2.17 '
+ onSubmit="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onMouseMove="search.q.value='site:lilypond.org/doc/v2.17 '
+ onMouseMove="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onKeyUp="search.q.value='site:lilypond.org/doc/v2.17 '
+ onKeyUp="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value">
<input type="hidden" name="btnG" value="Mit Google suchen">
<input type="text" name="brute_query" onfocus="this.value=''" value="Suche">
\input texinfo @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 714ec3008267aa3abd4f3bfb05da7eede2eb4e27
+ Translation of GIT committish: 93d725094ee629b2d5200ab5a75b609579a62973
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@end ignore
+@item
+Ya no se aplica automáticamente la funcionalidad de ajuste de los
+trazos de PostScript, sino que se deja a la discreción del
+dispositivo PostScript (de forma predeterminada, Ghostscript la
+usa para resoluciones de hasta 150ppp cuando se generan imágenes
+de matriz de puntos). Cuando se habilita, se emplea
+(principalmente para las plicas y las barras de compás) un
+algoritmo de trazado más complejo diseñado para sacar provecho del
+ajuste de los trazos.
+
+El ajuste de trazos se puede forzar mediante la especificación de
+la opción de línea de órdenes @samp{-dstrokeadjust} para la
+instrucción LilyPond. Cuando se generan archivos @code{PDF}, esto
+normalmente produce una vista previa de los @code{PDF}
+marcadamente mejorada, pero con un tamaño de archivo
+significativamente más grande. A altas resoluciones, la calidad
+de la impresión puede no resultar afectada.
+
+@item
+Ahora hay un nuevo tipo de contexto llamado @code{NullVoice} que,
+si bien no aparece en la salida impresa, se puede usar para
+alinear la letra de las canciones. Esto puede ser especialmente
+conveniente cuando se usa en paralelo con una construcción
+@code{\partcombine}.
+
+@lilypond[verbatim,quote]
+soprano = \relative c' { c e g c }
+alto = \relative c' { a c e g }
+verse = \lyricmode { This is my song }
+
+\score {
+ \new Staff <<
+ \partcombine \soprano \alto
+ \new NullVoice = "aligner" \soprano
+ \new Lyrics \lyricsto "aligner" \verse
+ >>
+ \layout {}
+}
+@end lilypond
+
+
@item
Pueden colocarse dentro de una sola variable, o ser devueltas por
una función de evento, varias articulaciones:
@code{inicio}, @code{final} y @code{fase}.
@noindent
-La línea d puntos siempre se extiende a la longitud completa dada
+La línea de puntos siempre se extiende a la longitud completa dada
por @var{destino}, sin ningún espacio al principio ni al final.
Es posible ajustar manualmente @code{final} para obtener espacios
mayores o menores entre los puntos. El valor dado (o
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+ Translation of GIT committish: 7ec0c02a1520974682d2e3e3aa2dd59a1a05988d
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
orientadas a su utilización en páginas web y presentaciones
multimedia.
-Este manual muestra también una aplicación: el formato de entrada es
-texto, y puede ser por tanto fácilmente empotrado dentro de otros
-formatos basados en texto como @LaTeX{}, HTML, o en el caso de este
-manual, Texinfo. Utilizando el programa @command{lilypond-book}, que
-viene incluido con LilyPond, los fragmentos de entrada se pueden
-reemplazar por imágenes de la música en los archivos de salida PDF o
-HTML resultantes. Otro ejemplo es la extensión (de terceras partes)
-OOoLilyPond para OpenOffice.org, que hace de la inclusión de ejemplos
-musicales dentro de los documentos, una tarea extremadamente sencilla.
+Este manual muestra también una aplicación: el formato de entrada
+es texto, y puede ser por tanto fácilmente empotrado dentro de
+otros formatos basados en texto como @LaTeX{}, HTML, o en el caso
+de este manual, Texinfo. Utilizando el programa
+@command{lilypond-book}, que viene incluido con LilyPond, los
+fragmentos de entrada se pueden reemplazar por imágenes de la
+música en los archivos de salida PDF o HTML resultantes. Otro
+ejemplo es la extensión (de terceras partes) OOoLilyPond para
+OpenOffice.org o LibreOffice, que hace de la inclusión de ejemplos
+musicales dentro de los documentos, una tarea extremadamente
+sencilla.
Para ver más ejemplos de LilyPond en acción, la documentación
completa, y el programa propiamente dicho, visite nuestra página
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@c This file is part of extending.tely
@ignore
- Translation of GIT committish: 6bbc01872dd4e9cced2524c378628d9219ac08ae
+ Translation of GIT committish: 41c8bf63a7cc180746eace9b9e5278f541be0229
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
\override #'(box-padding . 0.6) \box @{ #text @}#@}))
@end lisp
-or, equivalently
+o, de forma equivalente,
@lisp
#(define-markup-command (double-box layout props text) (markup?)
El procedimiento siempre toma un argumento único, que es el grob (el
objeto gráfico).
+Dicho procedimiento puede acceder al valor usual de la propiedad,
+llamando en primer lugar a la función que es el @q{callback} usual
+para esa propiedad, y que puede verse en el manual de referencia
+interna o en el archivo 'define-grobs.scm':
+
+@example
+\relative c'' @{
+ \override Flag #'X-offset = #(lambda (flag)
+ (let ((default (ly:flag::calc-x-offset flag)))
+ (* default 4.0)))
+ c4. d8 a4. g8
+@}
+@end example
+
Si se deben llamar rutinas con varios argumentos, el grob actual se
puede insertar con una cerradura de grob. He aquí un ajuste
procedente de @code{AccidentalSuggestion},
@c contributor/introduction.itely
@ignore
- Translation of GIT committish: f6443f01a56112f080b8d2e7e646007397bdf6ec
+ Translation of GIT committish: 6671c51302bd71216a7d4c698c475e2abf0d78b4
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Para un proyecto polifacético como LilyPond, a veces es difícil saber
por dónde empezar. Además de las vías que se proponen más abajo,
-puede enviar un correo electrónico al
-@email{mike@@mikesolomon.org,Frog meister} (maestro del equipo de
-cazadores de bugs) haciéndole conocer su conjunto de habilidades y
-preguntándole cómo puede ayudar, o proponiendo un proyecto. Él le
-dará unas indicaciones sobre cómo iniciarse.
+puede enviar un correo electrónico a la lista de correo
+@uref{https://lists.gnu.org/mailman/listinfo/lilypond-devel, lilypond-devel@@gnu.org},
+y nosotros le ayudaremos a iniciarse.
@end macro
fallos} adecuados, y/o apúntese al Escuadrón de Fallos para
la organización de los @rcontribnamed{Issues,Problemas}.
-@item
-@rcontrib{Grand Regression Test Checking} (la Magna Comprobación de
-las Pruebas de Regresión): verificar que LilyPond funciona
-correctamente examinando el resultado a la salida de los fragmentos de
-código de prueba. ¡Se tarda menos de un minuto en comprobar un
-fragmento de código!
-
@item
Documentación: se pueden proponer cambios pequeños siguiendo las
indicaciones de @rcontribnamed{Documentation suggestions,Sugerencias
the website,Traducir la página web}.
@item
-Corrección de fallos o funcionalidades nuevas: la mejor forma de
-comenzar es unirse a los cazadores de bugs, los Frogs, y leer
+Corrección de fallos o funcionalidades nuevas: lea
@rcontribnamed{Programming work,Trabajos de programación}.
@end itemize
@macro helpusProjects
@subheading Proyectos
-@subsubheading Frogs
-
-Página y lista de distribución de correo:
-
-@example
-@uref{http://frogs.lilynet.net}
-@end example
-
-Los Frogs son usuarios de LilyPond normales que voluntariamente se
-implican en el desarrollo de su programa favorito. Arreglar fallos,
-implementar funcionalidades nuevas, documentar el código fuente: es
-mucho lo que hay que hacer, pero lo principal es: hay una oportunidad
-para todos de aprender más sobre LilyPond, sobre el Software Libre,
-sobre programación@dots{} y pasarlo bien. Si siente curiosidad sobre
-cualquiera de ellos, el lema es: @emph{Join the Frogs!}
-
-
@subsubheading El proyecto GLISS (Grand LilyPond Input Syntax Standardization)
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 11cf358d3e89f42616c4361fc3203add5662cf4e
+ Translation of GIT committish: 7fdce4f39834cc8c83f176480cc1d20900eb09f8
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@seealso
+Manual de aprendizaje:
+@ref{Mover objetos}.
+
Referencia de la notación:
@ruser{Varias voces}.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: ff7d82711b47d3d31f26e1e6fc012c4055a20059
+ Translation of GIT committish: 7fdce4f39834cc8c83f176480cc1d20900eb09f8
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
resolución de colisiones entre objetos de presentación como silencios
multi-compás, ligaduras de unión y notas en distintas voces.
+@item
+@code{horizontal-shift}
+
+@cindex horizontal-shift, propiedad
+@cindex nota, columna de
+@cindex nota, colisiones
+@cindex colisiones de notas
+@cindex desplazamiento, instrucciones de
+@funindex \shiftOff
+@funindex shiftOff
+@funindex \shiftOn
+@funindex shiftOn
+@funindex \shiftOnn
+@funindex shiftOnn
+@funindex \shiftOnnn
+@funindex shiftOnnn
+
+Dentro de una vozm todas las notas que se producen en el mismo
+moemtno se agrupan en una columna de notas, y se crea un objeto
+@code{NoteColumn} para controlar el posicionamiento horizonal de
+dicho grupo de notas (véase @qq{Columnas de nota} en @ref{Voces
+explícitas}). Si @emph{y sólo si} dos o más columnas de nota
+dentro de un solo contexto de pauta, las dos con las plicas en la
+misma dirección, aparecen en el mismo momento musical, los valores
+de sus propiedades @code{horizontal-shift} se usan para asignarles
+una puntuación y las columnas con puntuaciones más altas se
+desplazan progresivamente para evitar las colisiones entre las
+cabezas de las notas. Esta propiedad se establece con las
+instrucciones @code{\voiceXXX} y se pueden sobreescribir
+directamente con una instrucción @code{\override} o, de forma más
+común con las instrucciones @code{\shiftOn}. Observe que esta
+propiedad se usa para @emph{calificar} las columnas de nota o para
+aplicar desplazamientos: no especifica la magnitud del
+desplazamiento, que se va incrementando progresivamente en pasos
+basándolse en la anchura de las cabezas de nota para cada
+puntuación. Los pasos son normalmente de la mitad de la anchura
+de una cabeza de nota, pero puede ser el ancho completo de la
+cabeza de una nota cuando está implicado un grupo de notas muy
+apretadas entre sí.
+
@item
@code{force-hshift} (forzar desplazamiento horizontal)
@cindex force-hshift, propiedad
-Las notas muy juntas de un acorde, o aquellas que ocurren al mismo
-tiempo en voces distintas, se disponen en dos (y ocasionalmente más)
-columnas para evitar la superposición de las cabezas. Éstas reciben
-el nombre de columnas de notas, y se crea un objeto llamado
-@code{NoteColumn} para disponer las notas en dicha columna.
-
La propiedad @code{force-hshift} es una propiedad de una
@code{NoteColumn} (realmente lo es del interface
-@code{note-column-interface}). Modificarlo permite mover una columna
-de notas en unidades adecuadas a una columna de notas, por ejemplo la
-anchura de la cabeza de la nota de la primera voz. Se debe usar en
-situaciones complejas donde las instrucciones @code{\shiftOn} normales
-(véase @ref{Voces explícitas}) no resuelven el
-conflicto entre las notas. Es preferible a la propiedad
-@code{extra-offset} para este propósito porque no hay necesidad de
-averiguar la distancia en espacios de pentagrama, y mover las notas
-dentro o fuera de una @code{NoteColumn} afecta a otras acciones como a
-la fusión entre cabezas de nota.
+@code{note-column-interface}). Modificarlo permite mover una
+columna de notas en situaciones donde las columnas de notas se
+superponen. Observe que no tiene efecto sobre las columnas de
+nota que no se superponen. Se especifica en unidades adecuadas a
+una columna de notas, por ejemplo la anchura de la cabeza de la
+nota de la primera voz. Se debe usar en situaciones complejas
+donde las instrucciones @code{\shiftOn} normales (véase @ref{Voces
+explícitas}) no resuelven el conflicto entre las notas de forma
+satisfactoria. Es preferible a la propiedad @code{extra-offset}
+para este propósito porque no hay necesidad de averiguar la
+distancia en espacios de pentagrama, y mover las notas dentro o
+fuera de una @code{NoteColumn} afecta a otras acciones como a la
+fusión entre cabezas de nota.
@end itemize
@end lilypond
@noindent
-Es necesario que la nota interior del primer acorde (el La bemol de la
-cuarta voz) no se aparte de la columna vertical de la nota aguda.
-Para corregirlo, ajustamos a cero el valor para esta nota de
-@code{force-hshift}, que es una propiedad de @code{NoteColumn}.
-
-En el segundo acorde preferimos que el Fa esté alineado con el La bemol
-y que la nota grave se coloque ligeramente a la derecha para evitar una
-colisión de las plicas. Lo conseguimos ajustando el valor de
-@code{force-hshift} en la @code{NoteColumn} del Re bemol grave para
-moverlo a la derecha medio espacio de pentagrama.
+Es necesario que la nota interior del primer acorde (el La bemol
+de la cuarta voz) no se aparte de la columna vertical de la nota
+aguda. Podríamos esperar corregirlo mediante el uso de
+@code{\shiftOff}, pero esto produce advertencias sobre columnas de
+notas que colisionan. En lugar de ello, ajustamos a cero el valor
+para esta nota de @code{force-hshift}, que es una propiedad de
+@code{NoteColumn}.
+
+En el segundo acorde preferimos que el Fa esté alineado con el La
+bemol y que la nota grave se coloque ligeramente a la derecha para
+evitar una colisión de las plicas. Lo conseguimos ajustando el
+valor de @code{force-hshift} en la @code{NoteColumn} del Re bemol
+grave para moverlo a la derecha medio espacio de pentagrama, y
+fijando @code{force-hshift} para el Fa al vaor cero. Observe que
+usamos @code{\once} para evitar que los ajustes se propaguen más
+allá del momento musical inmediato, aunque en este pequeño ejemplo
+podrían omitirse el @code{\once} y el segundo @code{\override} de
+la cuarta voz. Ello no supondría una buena práctica.
Presentamos a continuación el resultado final:
<<
{ c2 aes4. bes8 }
\\
- {
- <ees, c>2
- \once \override NoteColumn.force-hshift = #0.5
- des2
- }
+ { <ees, c>2 \once \override NoteColumn.force-hshift = 0.5 des }
\\
\\
- {
- \override NoteColumn.force-hshift = #0
- aes'2 f4 fes
- }
+ { \once \override NoteColumn.force-hshift = 0 aes'2
+ \once \override NoteColumn.force-hshift = 0 f4 fes }
>> |
<c ees aes c>1 |
}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
-Translation of GIT committish: ba8e0139b12ce248a00d8621104117f92bac34a6
+Translation of GIT committish: a43fe59b0205af99f84532935b103d0c064b4526
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@strong{@emph{RhythmicStaff}}
-Como @code{Staff}, pero para imprimir ritmos. Se ignoran las alturas
-de las notas; las notas se imprimen sobre una línea.
+Como @code{Staff}, pero para imprimir ritmos. Al imprimir
+se ignoran las alturas de las notas; las notas se imprimen
+sobre una línea. La salida de MIDI conserva las alturas
+sin modificación.
@strong{@emph{TabStaff}}
anidarse dentro de él.
La lista @qq{accepts} de un contexto se puede cambiar con las
-instrucciones @code{\accepts} (acepta) y @code{\denies} (niega).
+instrucciones @code{\accepts} (acepta) o @code{\denies} (niega).
@code{\accepts} añade un contexto a la lista @qq{accepts} y
-@code{\denies} elimina un contexto de la lista. Por ejemplo,
-normalmente no sería deseable que los acordes de cifrado americano
-estuvieran anidados dentro de un contexto @code{Staff}, por lo que el
-contexto @code{ChordNames} no se incluye de forma predeterminada
-dentro de la lista @qq{accepts} del contexto @code{Staff}, pero podría
-hacerse si fuera necesario:
+@code{\denies} elimina un contexto de la lista.
+
+Por ejemplo, un grupo de pentagramas con un corchete cuadrado no
+se encuentra normalmente en el interior de un pentagrama con llave
+curva que tenga conectadas las líneas divisorias, y un
+@code{GrandStaff} para piano no acepta un @code{StaffGroup} dentro
+de él, de forma predeterminada.
@lilypond[verbatim,quote]
\score {
- \new Staff {
- c' d' e' f'
- \chords { d1:m7 b1:min7.5- }
- }
+ \new GrandStaff <<
+ \new StaffGroup <<
+ \new Staff { c'1 }
+ \new Staff { d'1 }
+ >>
+ \new Staff { \set Staff.instrumentName = bottom f'1 }
+ >>
}
@end lilypond
+Sin embargo, usando la instrucción @code{\accepts}, se puede
+añadir un @code{StaffGroup} al contexto @code{GrandStaff}:
+
@lilypond[verbatim,quote]
\score {
- \new Staff {
- c' d' e' f'
- \chords { d1:m7 b1:min7.5- }
- }
+ \new GrandStaff <<
+ \new StaffGroup <<
+ \new Staff { c'1 }
+ \new Staff { d'1 }
+ >>
+ \new Staff { \set Staff.instrumentName = bottom f'1 }
+ >>
\layout {
\context {
- \Staff
- \accepts "ChordNames"
+ \GrandStaff
+ \accepts "StaffGroup"
}
}
}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+ Translation of GIT committish: 83c5b56f8a495df4fca2551957e0fd8757ec3651
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@funindex{\chords}
@code{\chords @{ @dots{} @}} es una forma abreviada de escribir
-@code{\new ChordNames @{ \chordmode @{ @dots{} @}}.
+@code{\new ChordNames @{ \chordmode @{ @dots{} @} @}}.
@lilypond[verbatim,quote,ragged-right]
\chords {
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+ Translation of GIT committish: b8a84e9fbdbb30e224d05afb73233760c3dacc4d
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@lilypondfile[verbatim,quote,texidoc,doctitle]
{chord-glissando-in-tablature.ly}
+@cindex hammer on
+@cindex pull off
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{hammer-on-and-pull-off.ly}
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{hammer-on-and-pull-off-using-voices.ly}
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{hammer-on-and-pull-off-using-chords.ly}
+
@seealso
Referencia de la notación:
@ref{Repetición de acordes},
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: ff7d82711b47d3d31f26e1e6fc012c4055a20059
+ Translation of GIT committish: 18f6f13f39b25f28679fe2073763151008ca3366
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@menu
* Crear archivos MIDI::
* Instrumentos MIDI::
-* El bloque MIDI::
* ¿Qué sale por el MIDI?::
* Repeticiones y MIDI::
* Control de los matices en el MIDI::
@subsection Crear archivos MIDI
@translationof Creating MIDI files
-Para crear un MIDI a partir de una pieza de música, escriba un bloque
-@code{\midi} en la partitura, por ejemplo:
+@cindex MIDI, bloque
+Para crear un MIDI a partir de un archivo de LilyPond, inserte un
+bloque @code{\midi} dentro de un bloque @code{\score};
@example
\score @{
@var{@dots{}música@dots{}}
+ \layout @{ @}
\midi @{ @}
@}
@end example
-Si hay un bloque @code{\midi} dentro de un @code{\score} que no tenga
-ningún bloque @code{\layout}, solamente se producirá MIDI. Si se
-necesita una notación impresa, debe haber también un bloque
-@code{\layout}:
+Si hay @emph{solamente} un bloque @code{\midi} dentro de un
+@code{\score} (es decir, sin ningún bloque @code{\layout}),
+entonces @emph{solamente} se producirá MIDI. No se produce
+ninguna salida impresa de notación musical.
@example
\score @{
@var{@dots{}música@dots{}}
\midi @{ @}
- \layout @{ @}
@}
@end example
-Se traducen correctamente a la salida MIDI la altura y duración de las
-notas, las ligaduras de unión, matices y cambios de tempo. Las
-indicaciones dinámicas, crescendi y decrescendi se traducen a niveles
-de volumen MIDI. Las marcas dinámicas se traducen a una fracción fija
-del rango de volumen MIDI disponible. Los crescendi y decrescendi
-hacen que el volumen varía linealmente entre sus dos extremos. El
-efecto de las indicaciones dinámicas sobre la salida MIDI se puede
-eliminar por completo, véase @ref{El bloque MIDI}.
-
-El tempo inicial y los cambios de tempo posteriores se pueden
-especificar utilizando la instrucción @code{\tempo} dentro de la
-propia notación musical. Se reflejan en cambios de tempo en la salida
-MIDI. Esta instrucción normalmente hace que se imprima la indicación
-metronómica, pero esto se puede eliminar, véase @ref{Indicaciones metronómicas}.
-Más abajo se describe una forma alternativa de especificar el tempo
-MIDI inicial o global, véase @ref{El bloque MIDI}.
-
-Debido a ciertas limitaciones de Windows, la extensión predeterminada
-para los archivos MIDI en Windows es @code{.mid}. Otros sistemas
-operativos utilizan la extensión @code{.midi}. Si prefiere una
-extensión diferente, inserte la siguiente línea en el nivel jerárquico
-superior del archivo de entrada, antes del inicio de cualquier bloque
-@code{\book}, @code{\bookpart} o @code{\score}:
+Se traducen correctamente a la salida MIDI la altura y duración de
+las notas, las ligaduras de unión, matices y cambios de tempo. Las
+@q{marcas} dinámicas se traducen a niveles de volumen con una
+@q{fracción fija} del rango de volumen MIDI disponible; Los
+crescendi y decrescendi hacen que el volumen varíe linealmente
+entre sus dos extremos.
+
+Se reflejan en la salida de MIDI todas las indicaciones de
+@code{\tempo}, incluidos todos los cambios de tempo siguientes,
+especificados dentro de la notación musical.
+
+Por lo general basta con dejar vacío el bloque @code{\midi}, pero
+puede contener disposiciones distintas de los contextos,
+definiciones de contexto nuevas o código que establezca valores
+para propiedades. En el ejemplo que aparece a continuación se
+fija el tempo a 72 negras por minuto, pero @emph{solamente} para
+la reproducción de audio a través de MIDI.
@example
-#(ly:set-option 'midi-extension "midi")
+\score @{
+ @var{@dots{}music@dots{}}
+ \midi @{
+ \tempo 4 = 72
+ @}
+@}
@end example
-La línea anterior establece la extensión predeterminada para los
-archivos MIDI a @code{.midi}.
+Observe que @code{\tempo} es en realidad una instrucción para
+establecer valores para propiedades durante la interpretación de
+la música, y en el contexto de las definiciones de salida, como un
+bloque @code{\midi}, se reinterpreta como si fuese una
+modificación de contexto.
+
+@cindex MIDI, definiciones de contexto
-De forma alternativa, esta opción se puede también proporcionar en
-la línea de órdenes:
+Las definiciones de contexto siguen la misma sintaxis que las de
+un bloque @code{\layout};
@example
-lilypond … -dmidi-extension=midi archivoLily.ly
+\score @{
+ @var{@dots{}música@dots{}}
+ \midi @{
+ \context @{
+ \Voice
+ \remove "Dynamic_performer"
+ @}
+ @}
+@}
@end example
+elimina de la salida MIDI el efecto de los matices dinámicos. Los
+módulos de traducción para el sonido se llaman @q{performers}
+(intérpretes).
@snippets
@knownissues
-@c In 2.11 the following no longer seems to be a problem -td
-@ignore
-Unterminated (de)crescendos will not render properly in the midi file,
-resulting in silent passages of music. The workaround is to explicitly
-terminate the (de)crescendo. For example,
+Algunos sistemas operativos requieren una extensión de archivo
+@emph{específica} para los archivos MIDI. Si se prefiere una
+extensión distinta, inserte la línea siguiente en el nivel
+superior del archivo de entrada, antes del comienzo de cualquier
+bloque @code{\book}, @code{\bookpart} o @code{\score};
@example
-@{ a4\< b c d\f @}
+#(ly:set-option 'midi-extension "mid")
@end example
-@noindent
-will not work properly but
+De esta manera quedará establecida la extensión predeterminada
+para los archivos MIDI a @code{.mid}.
+
+De forma alternativa, se puede proporcionar una opción en la línea
+de órdenes de la consola:
@example
-@{ a4\< b c d\!\f @}
+lilypond -dmidi-extension=mid MiArchivo.ly
@end example
-@noindent
-will.
-@end ignore
-
Los cambios del volumen MIDI sólo tienen lugar al principio de la
nota, por lo que los crescendi y decrescendi no pueden afectar al
volumen de una sola nota.
-No todos los reproductores de MIDI manejan adecuadamente los
-cambios de tempo de la salida MIDI. Entre los reproductores que
-se sabe que funcionan se encuentran el Reproductor de Medios de MS
-Windows y @uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
+Puede que algunos propgramas reproductores de MIDI no siempre
+manejen correctamente los cambios de tempo en la salida MIDI.
+
+@seealso
+Archivos instalados:
+@file{../ly/performer-init.ly}.
+
+Manual de aprendizaje:
+@rlearning{Otras fuentes de información}.
+
@node Instrumentos MIDI
@subsection Instrumentos MIDI
instrumentos de la lista de instrumentos MIDI, se usará el
instrumento Piano de Cola (@code{"acoustic grand"}).
-@node El bloque MIDI
-@subsection El bloque MIDI
-@translationof MIDI block
-
-@cindex bloque MIDI
-
-Si se requiere una salida MIDI, debe aparecer un bloque @code{\midi}
-dentro de un bloque de partitura. Es análogo al bloque layout de
-diseño de página, pero algo más simple. Con frecuencia, el bloque
-@code{\midi} se deja vacío, pero puede contener reorganizaciones de
-contextos, definiciones de contexto nuevas o código para fijar valores
-de propiedades. Por ejemplo, en el ejemplo siguiente se establece el
-tempo inicial exportado al archivo MIDI sin hacer que se imprima una
-indicación de tempo:
-
-@example
-\score @{
- @var{@dots{}música@dots{}}
- \midi @{
- \tempo 4 = 72
- @}
-@}
-@end example
-
-En este ejemplo, el tempo se establece a 72 pulsos de negra por
-minuto. @code{\tempo} is actually a music command for
-setting properties during the interpretation of music: in the
-context of output definitions like a @code{\midi} block, as a matter of
-courtesy those are reinterpreted as if they were context modifications.
-
-@cindex MIDI, definiciones de contexto
-
-Las definiciones de contexto siguen con precisión la misma sintaxis
-que la de un bloque @code{\layout}. Los módulos de traducción para el
-sonido reciben el nombre de ejecutantes. Los contextos para la salida
-MIDI se definen en @file{../ly/performer-init.ly}, véase
-@rlearning{Otras fuentes de información}. Por ejemplo, para eliminar
-el efecto de los matices de la salida MIDI, inserte las líneas
-siguientes en el bloque @code{\midi@{ @}}.
-
-@example
-\midi @{
- @dots{}
- \context @{
- \Voice
- \remove "Dynamic_performer"
- @}
-@}
-@end example
-
-La salida MIDI se crea sólo cuando se incluye un bloque @code{\midi}
-dentro de un bloque de partitura definido con una instrucción
-@code{\score}.
-
-@example
-\score @{
- @{ @dots{}notas@dots{} @}
- \midi @{ @}
-@}
-@end example
-
@node ¿Qué sale por el MIDI?
@subsection ¿Qué sale por el MIDI?
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 00cd4ff0b8dc4978344ba966bec06ddbc445f7e9
+ Translation of GIT committish: 4cd16b30ea12e67d0c67c3e5663db113ae95db5f
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@translationof Common chord modifiers
La tabla siguiente presenta los modificadores de acorde que se pueden
-usar en el modo de acordes @code{\chordmode} para generar las
-estructuras de acordes estándar.
+usar para generar las estructuras de acordes estándar.
-@multitable @columnfractions .2 .3 .2 .2
+@multitable @columnfractions .2 .25 .2 .15 .2
@item
-@b{Tipo de acorde}
+@b{Tipo}
@tab
-@b{Intervalos}
+@b{Intervalo}
@tab
-@b{Modificador(es)}
+@b{Modificador}
@tab
@b{Ejemplo}
+@tab
+@b{Salida}
@item
Mayor
@tab
-Tercera mayor y quinta justa
+Tercera mayor y quinta @*justa
@tab
@code{5} o nada
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:5
-}
+@code{c1:5}
+@tab
+@lilypond[line-width=2.1\cm,notime]
+<<
+ \chords { c1:5 }
+ \chordmode { c1:5 }
+>>
@end lilypond
@item
Menor
@tab
-Tercera menor y quinta justa
+Tercera menor y quinta @*justa
@tab
@code{m} o @code{m5}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m
-}
+@code{c1:m}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m }
+ \chordmode { c1:m }
+>>
@end lilypond
@item
Aumentado
@tab
-Tercera mayor y quinta aumentada
+Tercera mayor y quinta @*aumentada
@tab
@code{aug}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:aug
-}
+@code{c1:aug}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:aug }
+ \chordmode { c1:aug }
+>>
@end lilypond
@item
Disminuido
@tab
-Tercera menor y quinta disminuida
+Tercera menor y quinta @*disminuida
@tab
@code{dim}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:dim
-}
+@code{c1:dim}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:dim }
+ \chordmode { c1:dim }
+>>
@end lilypond
@item
Séptima dominante
@tab
-Tríada mayor con séptima menor
+Tríada mayor con séptima @*menor
@tab
@code{7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:7
-}
+@code{c1:7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:7 }
+ \chordmode { c1:7 }
+>>
@end lilypond
@item
Séptima mayor
@tab
-Tríada mayor y séptima mayor
+Tríada mayor y séptima @*mayor
@tab
@code{maj7} ó @code{maj}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj7
-}
+@code{c1:maj7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj7 }
+ \chordmode { c1:maj7 }
+>>
@end lilypond
@item
Séptima menor
@tab
-Tríada menor y séptima menor
+Tríada menor y séptima @*menor
@tab
@code{m7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m7
-}
+@code{c1:m7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m7 }
+ \chordmode { c1:m7 }
+>>
@end lilypond
@item
Séptima disminuida
@tab
-Tríada disminuida y séptima disminuida
+Tríada disminuida y séptima @*disminuida
@tab
@code{dim7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:dim7
-}
+@code{c1:dim7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:dim7}
+ \chordmode { c1:dim7 }
+>>
@end lilypond
@item
Aumentado con séptima
@tab
-Tríada aumentada y séptima menor
+Tríada aumentada y séptima @*menor
@tab
@code{aug7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:aug7
-}
+@code{c1:aug}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:aug7 }
+ \chordmode { c1:aug7 }
+>>
@end lilypond
@item
Séptima semi-disminuido
@tab
-Tríada disminuida y séptima menor
+Tríada disminuida y séptima @*menor
@tab
@code{m7.5-}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m7.5-
-}
+@code{c1:m7.5-}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m7.5- }
+ \chordmode { c1:m7.5- }
+>>
@end lilypond
@item
Menor con séptima mayor
@tab
-Tríada menor con séptima mayor
+Tríada menor con séptima @*mayor
+@tab
+@code{m7+}
@tab
@code{m7+}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m7+
-}
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m7+ }
+ \chordmode { c1:m7+ }
+>>
@end lilypond
@item
Mayor con sexta
@tab
-Tríada mayor y sexta
+Tríada mayor y @*sexta
@tab
@code{6}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:6
-}
+@code{c1:6}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:6 }
+ \chordmode { c1:6 }
+>>
@end lilypond
@item
Menor con sexta
@tab
-Tríada menor y sexta
+Tríada menor y @*sexta
@tab
@code{m6}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m6
-}
+@code{c1:m6}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m6 }
+ \chordmode { c1:m6 }
+>>
@end lilypond
@item
Novena dominante
@tab
-Séptima dominante con novena mayor
+Séptima dominante con novena @*mayor
@tab
@code{9}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:9
-}
+@code{c1:9}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:9 }
+ \chordmode { c1:9 }
+>>
@end lilypond
@item
Mayor con novena
@tab
-Séptima mayor y novena mayor
+Séptima mayor y novena @*mayor
@tab
@code{maj9}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj9
-}
+@code{c1:maj9}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj9 }
+ \chordmode { c1:maj9 }
+>>
@end lilypond
@item
Menor con novena
@tab
-Séptima menor y novena mayor
+Séptima menor y novena @*mayor
@tab
@code{m9}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m9
-}
+@code{c1:m9}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m9 }
+ \chordmode { c1:m9 }
+>>
@end lilypond
@item
Oncena dominante
@tab
-Novena dominante con oncena justa
+Novena dominante con oncena @*justa
@tab
@code{11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:11
-}
+@code{c1:11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:11 }
+ \chordmode { c1:11 }
+>>
@end lilypond
@item
Oncena mayor
@tab
-Novena mayor y oncena justa
+Novena mayor y oncena @*justa
@tab
@code{maj11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj11
-}
+@code{c1:maj11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj11 }
+ \chordmode { c1:maj11 }
+>>
@end lilypond
@item
Menor con oncena
@tab
-Novena menor y oncena justa
+Novena menor y oncena @*justa
@tab
@code{m11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m11
-}
+@code{c1:m11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m11 }
+ \chordmode { c1:m11 }
+>>
@end lilypond
@item
Trecena dominante
@tab
-Novena dominante y trecena mayor
+Novena dominante y trecena @*mayor
@tab
@code{13}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:13
-}
+@code{c1:13}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:13 }
+ \chordmode { c1:13 }
+>>
@end lilypond
@item
Trecena dominante
@tab
-Oncena dominante y trecena mayor
+Oncena dominante y trecena @*mayor
@tab
@code{13.11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:13.11
-}
+@code{c1:13.11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords{ c1:13.11 }
+ \chordmode { c1:13.11 }
+>>
@end lilypond
@item
Mayor con trecena
@tab
-Oncena mayor y trecena mayor
+Oncena mayor y trecena @*mayor
@tab
@code{maj13.11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj13.11
-}
+@code{c1:maj13.11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj13.11 }
+ \chordmode { c1:maj13.11 }
+>>
@end lilypond
@item
Menor con trecena
@tab
-Oncena menor y trecena mayor
+Oncena menor y trecena @*mayor
@tab
@code{m13.11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m13.11
-}
+@code{c1:m13.11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m13.11 }
+ \chordmode { c1:m13.11 }
+>>
@end lilypond
@item
Segunda suspendida
@tab
-Segunda mayor y quinta justa
+Segunda mayor y quinta @*justa
@tab
@code{sus2}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:sus2
-}
+@code{c1:sus2}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:sus2 }
+ \chordmode { c1:sus2 }
+>>
@end lilypond
@item
Cuarta suspendida
@tab
-Cuarta justa y quinta justa
+Cuarta justa y quinta @*justa
@tab
@code{sus4}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:sus4
-}
+@code{c1:sus4}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:sus4 }
+ \chordmode { c1:sus4 }
+>>
@end lilypond
@item
-Acorde de potencia o de quinta vacía (de dos notas)
+Acorde de potencia o de quinta vacía @*(de dos notas)
@tab
-Perfect fifth
+Quinta justa
@tab
@code{1.5}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- \powerChords
- c1:1.5
-}
+@code{\powerChords c1:1.5}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+\chordmode { \powerChords c1:1.5 }
@end lilypond
@item
-Acorde de potencia o de quinta vacía (de tres notas)
+Acorde de potencia o de quinta vacía @*@w{(de tres notas)}
@tab
-Perfect fifth, octave
+Quinta justa, @*octava
@tab
@code{1.5.8}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- \powerChords
- c1:1.5.8
-}
+@code{\powerChords c1:1.5.8}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+ \chordmode { \powerChords c1:1.5.8 }
@end lilypond
@end multitable
-
@node Afinaciones de cuerdas predefinidas
@appendixsec Afinaciones de cuerdas predefinidas
@translationof Predefined string tunings
@lilypondfile{display-predefined-string-tunings.ly}
-
@node Diagramas predefinidos de posiciones
@appendixsec Diagramas predefinidos de posiciones
@translationof Predefined fretboard diagrams
-El cuadro siguiente presenta los diagramas de posiciones de acordes
-predefinidos para guitarra.
+@menu
+* Diagramas para guitarra::
+* Diagramas para ukelele::
+* Diagramas para mandolina::
+@end menu
+
+@node Diagramas para guitarra
+@unnumberedsubsec Diagramas para guitarra
+@translationof Diagrams for Guitar
@lilypondfile[line-width=15.5\cm]{display-predefined-fretboards.ly}
-El cuadro siguiente presenta los diagramas de traste predefinidos para ukelele.
+@node Diagramas para ukelele
+@unnumberedsubsec Diagramas para ukelele
+@translationof Diagrams for Ukulele
@lilypondfile[line-width=15.5\cm]{display-predefined-ukulele-fretboards.ly}
-El siguiente cuadro presenta los diagramas de posiciones predefinidas
-para la mandolina.
+@node Diagramas para mandolina
+@unnumberedsubsec Diagramas para mandolina
+@translationof Diagrams for Mandolin
@lilypondfile[line-width=15.5\cm]{display-predefined-mandolin-fretboards.ly}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+ Translation of GIT committish: d5fc7a079db0853bfb49e21821226d492f01cf8c
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Las notas fantasma para la batería e instrumentos de percusión se
pueden crear utilizando la instrucción @code{\parenthesize} detallada
-en @ref{Paréntesis}. Sin embargo, el modo por defecto
-@code{\drummode} no incluye el complemento grabador
-@code{Parenthesis_engraver} que permite esto.
+en @ref{Paréntesis}.
@lilypond[quote,ragged-right,verbatim]
-\new DrumStaff \with {
- \consists "Parenthesis_engraver"
-}
+\new DrumStaff
<<
\context DrumVoice = "1" { s1 }
\context DrumVoice = "2" { s1 }
<<
{
hh8[ hh] <hh sn> hh16
- < \parenthesize sn > hh
- < \parenthesize sn > hh8 <hh sn> hh
+ \parenthesize sn hh
+ \parenthesize sn hh8 <hh sn> hh
} \\
{
bd4 r4 bd8 bd r8 bd
>>
@end lilypond
-@noindent
-Observe, además, que debe añadir acordes (paréntesis en ángulo @code{<
->}) alrededor de cada una de las instrucciones @code{\parenthesize}.
-
@seealso
Fragmentos de código:
@rlsr{Percussion}.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: bb44469cee5de15e46afbbebd580f898fe5f727b
+ Translation of GIT committish: 873151f815f8b8e27eb5231c74e28392561e4668
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
La propiedad @code{measureLength} se describe en @ref{Gestión del
tiempo}.
-@funindex \inStaffSegno
-
-La instrucción @code{\inStaffSegno} se puede utilizar para colocar el
-símbolo del segno en colaboración con la instrucción @code{\repeat
-volta}. Se pueden establecer símbolos alternativos de línea divisoria
-en el contexto de Score mediante la sobreescritura de las propiedades
-@code{segnoType}, @code{startRepeatSegnoType},
-@code{endRepeatSegnoType} o @code{doubleRepeatSegnoType} según sea
-necesario.
-
-@lilypond[verbatim,quote,relative=1]
-e1
-\repeat volta 2 {
- \inStaffSegno
- f2 g a b
-}
-c1_"D.S." \bar "|."
-@end lilypond
-
-
@cindex repeticiones, con ligaduras
@cindex primera y segunda vez, con ligaduras
@cindex ligaduras, en repeticiones
}
@end lilypond
+@funindex \inStaffSegno
+@cindex repeticiones, con segno
+@cindex segno, con repeticiones
+
+La instrucción @code{\inStaffSegno} se puede utilizar para generar
+una barra de compás combinada que incorpora el símbolo del segno
+junto con la barra de repetición, cuando se usa con la instrucción
+@code{\repeat volta}. Se selecciona automáticamente el tipo
+correcto de línea divisoria de repetición, ya sea de comienzo o
+fin de repeticion, o de doble repetición. Observe que la
+indicación @qq{D.S.} correspondiente se debe añadir manualmente.
+
+Salida de una repetición:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\inStaffSegno
+f2 g a b
+c1_"D.S." \bar "|."
+@end lilypond
+
+Al comienzo de una repetición:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ \inStaffSegno % start repeat
+ f2 g a b
+}
+c1_"D.S." \bar "|."
+@end lilypond
+
+Al final de una repetición:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ f2 g a b
+ \inStaffSegno % end repeat
+}
+f2 g a b
+c1_"D.S." \bar "|."
+@end lilypond
+
+Entre dos repeticiones:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ f2 g a b
+}
+\inStaffSegno % double repeat
+\repeat volta 2 {
+ f2 g a b
+}
+c1_"D.S." \bar "|."
+@end lilypond
+
+Se pueden obtener símbolos de línea divisoria alternativos
+mediante el establecimiento (en el contexto Score) de las
+propiedades @code{segnoType}, @code{startRepeatSegnoType},
+@code{endRepeatSegnoType} o @code{doubleRepeatSegnoType} al tipo
+de línea requerido. Los tipos de línea divisoria alternativos
+deben seleccionarse a partir de los tipos predefinidos o de tipos
+definidos anteriormente con la instrucción @code{\defineBarLine}
+(véase @ref{Barras de compás}).
+
+@lilypond[verbatim,quote,relative=1]
+\defineBarLine ":|.S[" #'(":|." "S[" "")
+\defineBarLine "]" #'("]" "" "")
+e1
+\repeat volta 2 {
+ f2 g a b
+ \once \set Score.endRepeatSegnoType = ":|.S["
+ \inStaffSegno
+}
+f2 g \bar "]" a b
+c1_"D.S." \bar "|."
+@end lilypond
+
@snippets
@lilypondfile[verbatim,quote,texidoc,doctitle]
{shortening-volta-brackets.ly}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 8d26005d0b783e546de362b96fb1b00540875064
+ Translation of GIT committish: 873151f815f8b8e27eb5231c74e28392561e4668
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
c1
@end lilypond
-Además, existe una instrucción @code{\inStaffSegno} que crea un
-símbolo de segno, situado en colaboración con la instrucción
-@code{\repeat volta}.
+Además, existe una instrucción @code{\inStaffSegno} que crea una
+barra de compás con símbolo de segno, situada en conjunción con
+una línea de repetición adecuada si se utiliza con una instrucción
+@code{\repeat volta}, véase @ref{Repeticiones normales}.
@funindex \defineBarLine
@funindex defineBarLine
@end lilypond
Sin embargo, algunos elementos de notación tales como las
-expresiones de matices dinámicos, los reguladores y las
-ligaduras de espresión, se deben unir al acorde y no a las notas que integran
-el mismo, pues en caso contrario no se imprimirán.
+expresiones de matices dinámicos, los reguladores y las ligaduras
+de expresión, se deben unir al acorde y no a las notas que
+integran el mismo, pues en caso contrario no se imprimirán.
@lilypond[verbatim,quote,relative=2]
<a\f c( e>1 <a c) e>\f <a\< c e>( <a\! c e>)
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: e038863ba7228eb3e28b9f1a49e68ec9f4d260b0
+ Translation of GIT committish: e965ee6c9b3b42a76fd6fce1f9c6b93b3ee79aae
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
alignToZero = \with {
\override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space
\override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space
+ \override VerticalAxisGroup.staff-affinity = #DOWN
+ \remove Text_engraver % avoid having two
+ \consists Text_engraver
}
lowerCaseChords = \with {
chordNameLowercaseMinor = ##t
}
-staffAffinityDown = \with {
- \override VerticalAxisGroup.staff-affinity = #DOWN
-}
labelContext =
#(define-music-function
(parser location context)
(string?)
- #{ s1*0^\markup { \typewriter #context } #})
+ #{ s1*0^\markup { \upright {\typewriter #context } } #})
\layout {
\context { \Dynamics \alignToZero }
\context { \FiguredBass \alignToZero }
\context { \Lyrics \alignToZero }
- \context { \NoteNames \alignToZero \staffAffinityDown }
- \context { \ChordNames \alignToZero
- \staffAffinityDown
- \lowerCaseChords }
- \context { \FretBoards \alignToZero \staffAffinityDown }
+ \context { \NoteNames \alignToZero }
+ \context { \ChordNames \alignToZero \lowerCaseChords }
+ \context { \FretBoards \alignToZero }
\context { \Score
\omit BarLine
\override DynamicText.self-alignment-X = #-1
\override FretBoard.X-offset = #1.75
- \override InstrumentName.minimum-Y-extent = #'(-2 . 2)
- \override InstrumentName.extra-offset = #'(0 . -0.5)
- \override TextScript.minimum-Y-extent = #'(-2 . 3)
+ \override InstrumentName.minimum-Y-extent = #'(-1 . 2)
+ \textLengthOn
\omit TimeSignature
}
}
%% These contexts have reference points at the baseline:
%% ChordNames, NoteNames, and Lyrics
<<
- \new ChordNames { \chords { g1:m } }
- \new NoteNames { s1 | g1 | }
- \new RhythmicStaff {
- \set RhythmicStaff.instrumentName = #"baseline "
- \textLengthOn
- \labelContext "ChordNames " s1 |
- \labelContext "NoteNames " s1 |
- \labelContext "Lyrics" s1 |
- }
- \new Lyrics { \lyrics { \skip 1*2 | ghijk1 | } }
+ \new ChordNames { \chords { \labelContext "ChordNames" g1:m } }
+ \new NoteNames { s1 |\labelContext "NoteNames" g1 | }
+ \new Lyrics { \lyrics { \skip 1*2 | \labelContext "Lyrics" ghijk1 | } }
+ \new RhythmicStaff \with { instrumentName = #"baseline " } s1*3
>>
%% The reference point for Dynamics is the midline of 'm' in the font
<<
- \new RhythmicStaff {
- \set RhythmicStaff.instrumentName = #"mid-height "
- \labelContext "Dynamics" s1*3
- }
- \new Dynamics { s1\mp s\fp }
+ \new Dynamics { \labelContext "Dynamics" s1\mp s\fp }
+ \new RhythmicStaff \with { instrumentName = #"mid-height " } s1*3
>>
%% The reference point for FiguredBass is its highest point
<<
- \new RhythmicStaff {
- \set RhythmicStaff.instrumentName = #"highest point "
- \labelContext "FiguredBass" s1
- }
- \new FiguredBass { \figuremode { <6 5>1 } }
+ \new FiguredBass { \labelContext "FiguredBass" \figuremode { <6 5>1 } }
+ \new RhythmicStaff \with { instrumentName = #"highest point " } s1
>>
%% The reference point for FretBoards is the top line
\include "predefined-guitar-fretboards.ly"
<<
- \new FretBoards { \chordmode { e1 } }
- \new RhythmicStaff {
- \set RhythmicStaff.instrumentName = #"top line "
- \labelContext "FretBoards " s1
- }
+ \new FretBoards { \labelContext "FretBoards" \chordmode { e1 } }
+ \new RhythmicStaff \with { instrumentName = #"top line " } s1
>>
@end lilypond
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+ Translation of GIT committish: 9b0c8394bbd8510cfc39c40342879703a4b3d2c1
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
ajusta la propiedad @code{instrumentCueName} dentro de un contexto
@code{CueVoice} provisional. La colocación y estilo del
@code{instrumentCueName} viene controlado a través del objeto
-@code{\instrumentSwitch}, véase @ref{Nombres de instrumentos}. Si las
+@code{InstrumentSwitch}, véase @ref{Nombres de instrumentos}. Si las
notas guía requieren un cambio de clave, puede hacerse manualmente
pero la clave original se debe restaurar al final de las notas guía.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+ Translation of GIT committish: 0fd0f2751c2001f2ff49c98bb8534aef1db77c6d
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
>>
@end lilypond
-El contexto de voz nula @code{NullVoice} debe estar dentro de un
-contexto @code{Staff}, y solamente debe contener notas que ya se
-están mostrando en dicho pentagrama, y en la misma octava. En
-caso contrario, la @code{NullVoice} podría interactuar con las
-voces impresas de forma inesperada. Por ejemplo, notas
-arbitrarias en la @code{NullVoice} pueden hacer que aparezcan (o
-desaparezcan) alteraciones accidentales en el pentragrama.
+El contexto de voz nula @code{NullVoice} debe estar situado dentro
+de un contexto @code{Staff} y contener notas que ya se están
+mostrando en dicho pentagrama, y en la misma octava. En caso
+contrario, la @code{NullVoice} podría interactuar con las voces
+impresas de forma inesperada. Por ejemplo, notas arbitrarias en
+la @code{NullVoice} pueden hacer que aparezcan (o desaparezcan)
+alteraciones accidentales en el pentragrama.
Este método se puede usar trambién con la función
@code{\partcombine}, que en sí no permite incluir letra:
>>
@end lilypond
+@knownissues
+La función @code{\addLyrics} solo funciona con letras de
+@code{Voice}, por lo que no puede utilizarse con @code{NullVoice}.
+
@noindent
-La función @code{\partcombine} se describe en
-@ref{Combinación automática de las partes}.
+La función @code{\partcombine} se describe en @ref{Combinación
+automática de las partes}.
Por último, este método se puede usar incluso si las voces están
en distintos pentagramas, y no se limita a dos voces únicamente:
<form action="http://google.com/search"
method="get"
name="search"
- onSubmit="search.q.value='site:lilypond.org/doc/v2.17 '
+ onSubmit="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onMouseMove="search.q.value='site:lilypond.org/doc/v2.17 '
+ onMouseMove="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onKeyUp="search.q.value='site:lilypond.org/doc/v2.17 '
+ onKeyUp="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value">
<input type="hidden" name="btnG" value="Búsqueda en Google">
<input type="text" name="brute_query" onfocus="this.value=''" value="Buscar">
-%% Translation of GIT committish: e797772ef677c797c169b7096a28f6a5959353ef
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidoces = "
Al escribir un bajo cifrado, podemos situar las cifras encima o debajo
de las notas del bajo, mediante la definición de la propiedad
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 0df86f1528d4e85021fa52e5c302c2507df6a19c
texidoces = "
Los pulsos que se saltan en glissandos muy largos se indican a veces
mediante marcas de tiempo, que a menudo consisten en figuras sin
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 0df86f1528d4e85021fa52e5c302c2507df6a19c
texidoces = "
Este ejemplo muestra cómo hacer una transcripción moderna de canto
gregoriano. El canto gregoriano no tiene compás ni plicas; utiliza
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 0df86f1528d4e85021fa52e5c302c2507df6a19c
doctitlees = "Cambiar el número del grupo especial"
texidoces = "
De forma predeterminada sólo se imprime sobre el corchete de grupo el
-%% Translation of GIT committish: 56145dfed8f19bb34459d5b40cab388776d2ec49
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidoces = "
La creación de un grupeto circular de anticipación entre dos notas,
donde la nota inferior del grupeto utiliza una alteración, requiere
-varias sobreescriturasw de propiedades. La propiedad
-@code{outside-staff-priority} se debe establecer al valor @code{#f}, pues en
-caso contrario tendría prioridad sobre la propiedad @code{avoid-slur
-property}. El valor de @code{halign} se utiliza para colocar el
-grupeto horizontalmente.
+varias sobreescrituras de propiedades. La propiedad
+@code{outside-staff-priority} se debe establecer al valor @code{#f},
+pues en caso contrario tendría prioridad sobre la propiedad
+@code{avoid-slur property}. Cambiando las fracciones @code{2/3} y
+@code{1/3} puede ajustarse la posición horizontal.
"
doctitlees = "Crear un grupeto de anticipación"
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 0df86f1528d4e85021fa52e5c302c2507df6a19c
texidoces = "
A diferencia de los glissandos, los @q{slides} o ligaduras pueden
partir de un punto impreciso del mástil hasta un traste específico.
-%% Translation of GIT committish: e797772ef677c797c169b7096a28f6a5959353ef
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidoces = "
Algunas expresiones de matiz dinámico llevan texto adicional, como
@qq{sempre pp}. Dado que los matices suelen ir centrados bajo la
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 0df86f1528d4e85021fa52e5c302c2507df6a19c
texidoces = "
Los «incipit» se pueden escribir utilizando el grob del nombre del
instruemento, pero manteniendo independientes las definiciones del
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 0df86f1528d4e85021fa52e5c302c2507df6a19c
texidoces = "
Ésta es una plantilla bastante avanzada, para un conjunto de
jazz. Observe que la notación de todos los instrumentos está en
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 0df86f1528d4e85021fa52e5c302c2507df6a19c
texidoces = "
Si se ajusta la propiedad @code{transparent} de un objeto, se imprime
en @qq{tinta invisible}: el objeto no se imprime pero se retienen
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 0df86f1528d4e85021fa52e5c302c2507df6a19c
texidoces = "
Si se ajusta la propiedad @code{breakable} al valor @code{#t} en
combinación con @code{after-line-breaking}, podemos hacer que un
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 0df86f1528d4e85021fa52e5c302c2507df6a19c
texidoces = "
Plantilla para escribir una partitura para acordeón diatónico.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 22b4097bcee9f2909b8c43fa69ea313aad0b71c3
+ Translation of GIT committish: 07c022f5e65a806e27c3f5f4f4bdae4020c1af8e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
filetype off
set runtimepath+=/usr/local/share/lilypond/current/vim/
filetype on
+syntax on
@end example
Si LilyPond no está instalado en el directorio
@menu
* Muchas citas de una partitura extensa::
-* Insertar la salida de LilyPond dentro de OpenOffice.org::
+* Insertar la salida de LilyPond dentro de OpenOffice y LibreOffice::
* Insertar la salida de LilyPond dentro de otros programas::
@end menu
@ruser{Extracción de fragmentos de música}.
-@node Insertar la salida de LilyPond dentro de OpenOffice.org
-@unnumberedsubsec Insertar la salida de LilyPond dentro de OpenOffice.org
-@translationof Inserting LilyPond output into OpenOffice.org
+@node Insertar la salida de LilyPond dentro de OpenOffice y LibreOffice
+@unnumberedsubsec Insertar la salida de LilyPond dentro de OpenOffice y LibreOffice
+@translationof Inserting LilyPond output into OpenOffice and LibreOffice
@cindex OpenOffice.org
+@cindex LibreOffice.org
Se puede añadir notación de LilyPond a los documentos de
-OpenOffice.org con
+OpenOffice.org y LibreOffice con
@uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: ff7d82711b47d3d31f26e1e6fc012c4055a20059
+ Translation of GIT committish: 93d725094ee629b2d5200ab5a75b609579a62973
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@tab No usar los directorios de los archivos de entrada al construir los
nombres de los archivos de salida.
+@item @code{strokeadjust}
+@tab @code{#f}
+@tab Forzar el ajuste de los trazos de PostScript. Esta opción es
+relevante principalmente cuando se genera un @code{PDF} a partir
+de la salida de PostScript (el ajuste del trazo está por lo
+general activado automáticamente para dispositivos de mapa de
+puntos de baja resolución). Sin esta opción, los visores
+de@code{PDF} tienden a producir anchuras de plica muy poco
+consistentes a las resoluciones típicas de las pantallas de
+ordenador. La opción no afecta de forma muy significativa a la
+calidad de la impresión y causa grandes incrementos en el tamaño
+del archivo @code{PDF}.
+
@item @code{svg-woff}
@tab @code{#f}
@tab Usar archivos de fuente tipográfica de woff en el backend SVG.
\input texinfo @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: a8841c7b9212700f2ebac56e0713afa78a8f0ca0
+ Translation of GIT committish: 0807a75d66c302c6b7fb13c9b586a25ebf0265ad
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@ifhtml
@macro contactUsAbout{topic}
-@divClass{heading-center}
-@divClass{contactBox}
-Si tiene conocimiento de cualesquiera otros \topic\ que merezcan
-aparecer relacionados aquí,
-le rogamos que nos lo haga saber siguiendo las instrucciones
-que hay en @ref{Informes de fallos}.
+@divClass{heading-center} @divClass{contactBox} Si tiene
+conocimiento de cualesquiera otros \topic\ que merezcan aparecer
+relacionados aquí, le rogamos que nos lo haga saber escribiendo un
+mensaje a la lista de correo bug-lilypond. Si no está suscrito a
+la lista, aún puede hacerlo en la
+@uref{https://lists.gnu.org/mailman/listinfo/bug-lilypond,página informativa}
+de la lista o escribiendo directamente a través del
+@uref{http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs,interfaz web de lilypond.bugs en gmane}.
+
@divEnd
@divEnd
@divClass{column-center-bottom}
@subheading ¿Cuán pequeño debe ser?
-El código que sige ¿es un ejemplo mínimo?
+El código que sigue ¿es un ejemplo mínimo?
@example
\version "2.14.1"
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 2970311021cf68958850e43911e0cecf51f68fbc
+ Translation of GIT committish: 53ea968b35ad64c914a7bd503786aaf8d3b0c762
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@divClass{column-center-top}
@subheading ¿Paquetes genéricos, o paquetes específicos de la distribución?
-Muchas distribuciones incluyen a LilyPond dentro de su sistema normal
-de paquetes. Estas versiones son más fáciles de instalar y
-desinstalar que los paquetes genéricos, pero pueden ser más antiguas.
-Si quiere utilizar nuestros paquetes genéricos, desinstale la versión
-oficial de su sistema utilizando el gestor normal de paquetes para su
-distribución. Consulte la documentación de su distribución sobre cómo
-usar su gestor de paquetes.
+Muchas distribuciones ya incluyen a LilyPond dentro de sus
+repositorios normales de paquetes y con frecuencia son mucho más
+fáciles de instalar que los paquetes genéricos que ofrecemos aquí.
+Sin embargo, la versión de LilyPond de dichos repositorios podría
+ser @emph{significativamente} más antigua que la versión estable
+actual. Si quiere utilizar nuestros paquetes genéricos, compruebe
+que su editor de LilyPond está usando la versión correcta del
+programa lilypond. Véase @ref{Entornos mejorados}.
@divEnd
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: f6443f01a56112f080b8d2e7e646007397bdf6ec
+ Translation of GIT committish: 62dd4c2473cba2401ef83ccac3d353959c166399
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@subsubheading Entrada basada en texto
LilyPond toma una entrada en texto normal, que podemos elaborar en
-nuestro editor de texto de preferencia, de forma rápida y cómoda. La
-entrada de texto contiene toda la información, de manera que no hay
-necesidad de recordar complejas secuencias de instrucciones: tan sólo
-guarde un código de entrada para que sirva como referencia futura.
+nuestro editor de texto de preferencia, de forma rápida y cómoda.
+La entrada de texto contiene toda la información, de manera que no
+hay necesidad de recordar complejas secuencias de instrucciones:
+tan sólo guarde un código de entrada para que sirva como
+referencia futura.
@subsubheading Combinar música y texto
Coloque fragmentos de música dentro de textos sin cortar y pegar
-imágenes. Integre música dentro de @LaTeX{} o HTML de forma sencilla,
-o añada música a documentos de OpenOffice.org mediante OOoLilyPond.
-También hay plugins o complementos disponibles para permitir código de
-LilyPond dentro de diversos blogs y wikis, haciendo posible la
-colaboración en línea.
+imágenes. Integre música dentro de @LaTeX{} y HTML de forma
+sencilla, o añada música a documentos de OpenOffice.org o
+LibreOffice mediante OOoLilyPond. También hay plugins o
+complementos disponibles para permitir código de LilyPond dentro
+de diversos blogs y wikis, haciendo posible la colaboración en
+línea.
@subsubheading Accesibilidad
La entrada basada en texto también hace posible la escritura de
-partituras para usuarios con deficiencias físicas. Los usuarios con
-alguna dificultad manual que no pueden teclear o manejar un ratón de
-ordenador pueden usar software de reconocimiento de voz para editar
-los archivos de LilyPond. Incluso las personas totalmente ciegas
-pueden usar lectores de pantalla para escribir los archivos de
-LilyPond (una tarea imposible en los programas de edición de
-partituras basados en gráficos).
+partituras para usuarios con deficiencias físicas. Los usuarios
+con alguna dificultad manual que no pueden teclear o manejar un
+ratón de ordenador pueden usar software de reconocimiento de voz
+para editar los archivos de LilyPond. Incluso las personas
+totalmente ciegas pueden usar lectores de pantalla para escribir
+los archivos de LilyPond (una tarea imposible en los programas de
+edición de partituras basados en gráficos).
@subsubheading Diseño ampliable
Varios desarrolladores que son a su vez usuarios activos de LilyPond,
han escrito herramientas orientadas específicamente a hacer más fácil
y efectivo el proceso de editar archivos de LilyPond. Para ver
-algunos ejemplos, consulte @ref{Easier editing}.
+algunos ejemplos, consulte @ref{Entornos mejorados}.
@divEnd
@divClass{column-center-bottom}
@divClass{keep-bullets}
@itemize
+@item
+@uref{http://www.aurelienbello.com/,Aurélien Bello} ha
+reorquestado @emph{Der Ring des Nibelungen} de Richard Wagner a una
+@uref{http://www.rsb-online.de/content/konzerte/wagnerzyklus-10-13/wagner-fuer-kinder/index_ger.html,versión para niños} de 100 minutos de duración.
+Está escrita para orquesta sinfónica estándar pero con una
+plantilla reducida de cantantes, y se interpretará por la
+@emph{Radio-Sinfonieorchester Berlin} los días 5 y 6 de abril de
+2014 en el Atze Musiktheater de Berlín. El director es Heiko
+Matthias Förster.
+
+@item
+Joe Smeets creó las partituras para el libro infantil @emph{Zing
+Mee} (@emph{Canta conmigo}) de Annie M.G. publicado por Querido
+(ISBN 9789045106205):
+@uref{http://www.queridokinderenjeugdboeken.nl/web/Boek.htm?dbid=18954&typeofpage=134707,
+www.queridokinderenjeugdboeken.nl}; partituras de ensayo de coro
+para la traducción holandesa del @emph{Saint Nicolas} de Benjamin
+Britten realizado por @emph{Muziektheater Hollands Diep} en 2011,
+@uref{http://www.muziektheaterhollandsdiep.nl/nl/voorstellingen/sint_nicolaas_leeft,
+www.muziektheaterhollandsdiep.nl}; y está trabajando actualmente
+en la pastitura general y particellas de un arreglo del
+@emph{Boris Godounov} de Moussurgsky para cuarteto de viento,
+piano y percuión. Se interpretará en 2014, de nuevo por parte de
+@emph{Muziektheater Hollands Diep}.
+
@item
Una edición crítuca de la serie de óperas @emph{Enea nel Lazio (1760)},
de Tommaso Traetta, con libreto de
Tiene a su disposición una documentación mucho más profunda en la
sección @ref{Manuales}.
+Ben Lemon, usuario de LilyPond, ha creado y publicado una
+colección de
+@uref{http://benlemon.me/blog/music/lilypond/operation-lilypond/,tutoriales
+en vídeo} en su blog, dirigidos a nuevos usuarios.
@subsubheading Entornos de edición facilitados
@uref{http://www.tunefl.com}
Con tunefl se pueden componer tipográficamente las partituras de
-forma directa en línea sin necesidad de instalar lilypond
+forma directa en línea sin necesidad de instalar LilyPond
localmente. Permite probar todas las capacidades del programa
usando una interfaz web cómoda.
@item
@uref{http://lilycomp.sourceforge.net, LilyComp} es un programa
gráfico de introducción de notas, que actúa más o menos como un
-teclado numérico que produce notas de lilypond.
+teclado numérico que produce notas de LilyPond.
@end itemize
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 673a3c376246f030f524d3eb3680b6d902c51ad1
+ Translation of GIT committish: fdb9b90f39b33d15d097f69c43c7799b1c1dce9b
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository (el almacén de fragmentos de código de LilyPond)}:
ejemplos, consejos y trucos creados por los usuarios.
+@item
+@uref{http://benlemon.me/blog/music/lilypond/operation-lilypond/,Video
+Tutorials}: Ben Lemon, usuario de LilyPond, ha creado y publicado
+cierto número de tutoriales de vídeo en su blog que están
+indicados para nuevos usuarios.
+
@item
@ref{Desarrollo}:
manuales para la versión de desarrollo.
@divClass{keep-bullets}
@itemize
+@item @uref{http://lilypond.org/doc/v2.16/Documentation/web/manuals.es.html,
+Documentación de LilyPond 2.16}
+
@item @uref{http://lilypond.org/doc/v2.14/Documentation/web/manuals.es.html,
Documentación de LilyPond 2.14}
@command{lilypond-book} program, included with LilyPond, the input
fragments can be replaced by music images in the resulting PDF or HTML
output files. Another example is the third-party OOoLilyPond extension
-for OpenOffice.org, which makes it extremely easy to embed musical
-examples in documents.
+for OpenOffice.org or LibreOffice, which makes it extremely easy to
+embed musical examples in documents.
For more examples of LilyPond in action, full documentation, and the
software itself, see our main website: www.lilypond.org.
The procedure always takes a single argument, being the grob.
+That procedure may access the usual value of the property, by first
+calling the function that is the usual callback for that property, which
+can by found in the Internals Reference or the file 'define-grobs.scm':
+
+@example
+\relative c'' @{
+ \override Flag #'X-offset = #(lambda (flag)
+ (let ((default (ly:flag::calc-x-offset flag)))
+ (* default 4.0)))
+ c4. d8 a4. g8
+@}
+@end example
+
If routines with multiple arguments must be called, the current grob
can be inserted with a grob closure. Here is a setting from
@code{AccidentalSuggestion},
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 0f062fdb1c08e46bce7aa3047ee3c7f68e686079
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
l'air terne et mécanique.
Ce qui rend cette nouvelle édition différente n'est pas évident au
-premier coup d'œil : c'est propre et condensé, presque @qq{mieux}
-que l'autre dans la mesure où tout y est @qq{calculé} pour atteindre
+premier coup d'œil : c'est propre et condensé, presque « mieux »
+que l'autre dans la mesure où tout y est « calculé » pour atteindre
l'uniformité. À vrai dire, il nous a fallu un moment pour nous en
rendre compte. Notre but étant d'améliorer la notation informatisée, il
nous fallait mettre le doigt sur ce qui ne va pas.
@end quotation
LilyPond s'inspire du travail réalisé par les maîtres graveurs qui
-officiaient chez les éditeurs européens jusque dans les années 1950.
+officiaient chez les éditeurs européens jusque dans les années 1950.
Ceux-ci sont bien souvent considérés comme ayant atteint le sommet de
leur art, et comptent dans leurs rangs des maisons telles que
Bärenreiter, Duhem, Durand, Hofmeister, Peters ou Schott. Au fil de
l'art du graveur traditionnel et le résultat habituel sorti d'un
ordinateur. L'image de gauche est un fac-similé d'un bémol tiré
d'une édition Bärenreiter traditionnelle ; celle de droite est
-issue de la même partition, éditée en 2000. Bien que toutes deux soient
-imprimées avec le même encrage, la version @qq{ancienne} paraît plus
+issue de la même partition, éditée en 2000. Bien que toutes deux soient
+imprimées avec le même encrage, la version « ancienne » paraît plus
noire : les lignes de la portée y sont plus épaisses et le galbe du
bémol de Bärenreiter est à la limite de la volupté. Sur l'autre image,
les lignes sont plus fines et le bémol semble raide, coincé.
Nous allons maintenant examiner les éléments nécessaires à la création
d'un logiciel capable d'imiter le rendu des partitions gravées à
l'ancienne. Nous commencerons par voir comment inculquer à l'ordinateur
-les @qq{bonnes manières} de la présentation. Nous nous attarderons
+les « bonnes manières » de la présentation. Nous nous attarderons
ensuite sur l'analyse comparative par rapport aux éditions
traditionnelles, avant de considérer le degré de flexibilité à y inclure
pour être en mesure de gérer les différents cas de figure particuliers à
@end quotation
@emph{Règles de formatage définies par l'exemple. Image tirée de
-l'ouvrage de Ted Ross @qq{The Art of Music Engraving}}
+l'ouvrage de Ted Ross « The Art of Music Engraving »}
Plutôt que d'écrire une foultitude de règles qui embrasserait tous les
cas de figure possibles et imaginables en matière de mise en forme, nous
mauvaise.
Voici, à titre d'exemple, trois configurations possibles pour le tracé
-d'une liaison ; LilyPond leur attribue individuellement une @qq{note
-de laideur}. Le premier essai se voit attribuer 15,39 points
+d'une liaison ; LilyPond leur attribue individuellement une « note
+de laideur ». Le premier essai se voit attribuer 15,39 points
notamment pour l'effleurement de la tête de note.
@lilypond
@translationof Getting things right
Nous pouvons aussi évaluer les capacités de LilyPond dans ses choix, en
-comparant ses résultats avec ce que génèrent d'autres d'autres logiciels
-du marché. Notre choix s'est porté sur Finale 2008, l'un des
-logiciels les plus populaires notamment en Amérique du Nord. Son plus
+comparant ses résultats avec ce que génèrent d'autres logiciels du
+marché. Notre choix s'est porté sur Finale 2008, l'un des logiciels les
+plus populaires notamment en Amérique du Nord. Son plus
proche concurrent est Sibelius, très répandu sur le marché européen.
Pour cette analyse comparative, nous avons choisi la fugue en sol mineur
musicale couvre cinq siècles de musique, allant de la simple monodie à
de gigantesques contrepoints orchestraux.
-Comment intégrer un tel monstre aux si nombreux visages ? Notre solution
+Comment intégrer un tel monstre aux si nombreux visages ? Notre solution
est de clairement distinguer la notation -- @emph{quels} symboles
utiliser -- de la gravure -- @emph{où} les placer. Pour appréhender la
notation, nous l'avons disséquée en éléments simples (et
règles de formatage. Chaque objet possède des variables contenant des
procédures. Ces procédures réalisent le formatage prédéfini, dont
l'apparence peut être changée en remplaçant ces procédures par d'autres.
-Dans l'exemple suivant, la règle permettant à l'objet @qq{tête de note}
+Dans l'exemple suivant, la règle permettant à l'objet « tête de note »
de dessiner son symbole est modifiée au cours de l'extrait
musical :
multimédia.
Vous avez constaté, au fil de notre propos, que le format source est
-purement textuel et peut donc être réutilisé dans d'autres formats
-basés sur une description textuelle comme @LaTeX{}, HTML ou -- ce qui
-est le cas pour la documentation de LilyPond -- Texinfo. À l'aide du
-script @command{lilypond-book} fournit avec LilyPond, les fragments
-de code insérés feront place à une image dans le fichier résultant,
-qu'il soit au format PDF ou HTML. Il existe aussi une extension pour
-OpenOffice.org -- OOoLilyPond -- qui permet d'insérer des extraits dans
-un document.
+purement textuel et peut donc être réutilisé dans d'autres formats basés
+sur une description textuelle comme @LaTeX{}, HTML ou -- ce qui est le
+cas pour la documentation de LilyPond -- Texinfo. À l'aide du script
+@command{lilypond-book} fourni avec LilyPond, les fragments de code
+insérés feront place à une image dans le fichier résultant, qu'il soit
+au format PDF ou HTML. Il existe aussi une extension pour
+OpenOffice.org et LibreOffice -- OOoLilyPond -- qui permet d'insérer des
+extraits dans un document.
Pour mieux voir LilyPond en action, consulter la documentation ou
accéder directement au logiciel, rendez-vous sur www.lilypond.org.
+
@page
@node Comparatif (BWV 861)
@section Comparatif (BWV 861)
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 815ddc522bcdec0c1266caad5cc9e723fbbb2e41
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
La procédure prend un unique argument, en l'occurrence l'objet graphique
(le @emph{grob}).
+Cette procédure, grâce à un appel à la fonction de rappel dévolue à
+cette propriété -- mentionnée dans la référence des propriétés internes
+et dans le fichier @file{define-grobs.scm} --, pourra accéder à la
+valeur usuelle de la propriété :
+
+@example
+\relative c'' @{
+ \override Flag #'X-offset = #(lambda (flag)
+ (let ((default (ly:flag::calc-x-offset flag)))
+ (* default 4.0)))
+ c4. d8 a4. g8
+@}
+@end example
+
Dans le cas où la routine doit faire appel à plusieurs arguments, le
@emph{grob} en cours peut s'insérer à l'aide d'un @emph{grob} enchâssé.
Voici, à titre d'illustration, un réglage pour
@c contributor/introduction.itely
@ignore
- Translation of GIT committish: 0a8b4e0f1b0d68659a584be48c7b96da358d501d
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Pour un projet aux multiples facettes tel que LilyPond, il n'est parfois
pas évident de savoir sous quel angle l'aborder. En plus des pistes
-ci-dessous proposées, n'hésitez pas à adresser un courriel à notre
-@email{mike@@mikesolomon.org, Frog meister}, lui faisant part des
-compétences que vous désirez mettre à disposition de la communauté ou
-bien pour lui proposer un projet. Il est à même de vous guider dans vos
-premiers pas.
+ci-dessous proposées, n'hésitez pas à envoyer un courriel sur la liste
+@uref{https://lists.gnu.org/mailman/listinfo/lilypond-devel, lilypond-devel@@gnu.org}
+afin d'obtenir de l'aide.
@end macro
puis aider l'équipe des correcteurs à traiter ces
@rcontribnamed{Issues, problèmes}.
-@item
-@rcontribnamed{Grand Regression Test Checking, Vérification des test de
-régression} : vérifier que LilyPond fournit un travail toujours
-exemplaire au fil des versions. Contrôler un échantillon spécifique
-prend moins d'une minute !
-
@item
Documentation : il est possible de proposer des modifications, en
suivant les recommandations s'appliquant aux
@item
Correction de bogue et ajout de nouvelles fonctionnalités :
-la voie recommandée est de se joindre aux « Frogs », et de lire
-@rcontrib{Programming work}.
+voir @rcontrib{Programming work}.
@end itemize
@macro helpusProjects
@subheading Projets
-@subsubheading Frogs
-
-Site et liste de diffusion :
-
-@example
-@uref{http://frogs.lilynet.net}
-@end example
-
-Les « Frogs » sont de simples utilisateurs de LilyPond qui ont
-décidé de s'impliquer dans le développement de leur logiciel préféré.
-Ils corrigent des bogues, implémentent de nouvelles fonctionnalités ou
-documentent le code source. Il y a beaucoup à faire, mais le plus
-important est que chacun peut ainsi en apprendre beaucoup
-sur LilyPond, les logiciels libres, la programmation@dots{} et y prendre
-plaisir ! L'aventure vous tente ? Alors une seule chose à
-faire : @emph{Rejoignez les Frogs !}
-
-
@subsubheading Projet GLISS de stabilisation de la syntaxe
Page web :
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 45f95ed2dabb3aef3c9a6995701dc255ba88d68a
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
d'empilements en conflit}.
@seealso
+Manuel d'initiation :
+@ref{Déplacement d'objets}
+
Manuel de notation :
@ruser{Plusieurs voix}.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 45f95ed2dabb3aef3c9a6995701dc255ba88d68a
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
les liaisons et les notes de différentes voix.
+@item
+@code{horizontal-shift}
+
+@cindex horizontal-shift, propriété
+@cindex notes, empilement
+@cindex empilement de notes
+@cindex notes, collisions
+@cindex collisions de notes
+@cindex shift, commandes
+@funindex \shiftOff
+@funindex shiftOff
+@funindex \shiftOn
+@funindex shiftOn
+@funindex \shiftOnn
+@funindex shiftOnn
+@funindex \shiftOnnn
+@funindex shiftOnnn
+
+Au sein d'une même voix, toutes les notes intervenant au même instant
+musical sont regroupées dans un empilement (une colonne) et est créé un
+objet @code{NoteColumn} afin de contrôler le positionnement horizontal
+de ce groupe de notes -- voir « Empilement de notes » dans
+@ref{Instanciation explicite des voix}. Si, et seulement si deux ou
+plusieurs empilements au sein d'un même contexte de portée ont une
+orientation de hampe identique et se produisent au même instant musical,
+les valeurs de leurs propriétés @code{horizontal-shift} permettront de
+les ordonner, les empilements de rang supérieur étant progressivement
+décalés pour éviter les chevauchements des têtes. Cette propriété est
+déterminée par les commandes @code{\voiceXXX} et peut se voir aménagée
+par une commande @code{\override} ou, plus habituellemnt, par les
+commandes @code{\shiftOn}. Notez bien que cette propriété ne fait
+qu'affecter un rang aux empilements pour leur décalage ; elle ne
+détermine en rien la magnitude du décalage, qui sera augmentera
+progressivement et selon un pas proprotionnel à la largeur des têtes de
+chaque rang. Le pas, généralement de la moitié de la largeur d'une
+tête, peut aller jusqu'à la pleine largeur de tête en cas de groupes
+resserrés.
+
@item
@code{force-hshift}
@cindex force-hshift, propriété
-Des notes très proches dans un accord, ou des notes simultanées dans
-différentes voix, peuvent être disposées sur deux colonnes, rarement
-plus, pour éviter que les têtes de notes ne se chevauchent. On parle
-alors de colonnes (ou empilement) de notes et un objet appelé
-@code{NoteColumn} est créé pour placer les notes sur la colonne.
-
La propriété @code{force-hshift} appartient à @code{NoteColumn} (en
réalité à la @code{note-column-interface}). Le fait de la modifier
-permet de déplacer un empilement selon l'unité appropriée aux colonnes
+permet de déplacer un empilement dans le cas de chevauchement
+d'empilements. Notez bien qu'elle sera sans effet en l'absence de
+chevauchement. Elle s'exprime en unité appropriée aux colonnes
de notes, à savoir la largeur des têtes de note de la première voix.
Son utilisation est réservée à des situations complexes dans lesquelles
les commandes habituelles @code{\shiftOn}
@noindent
La note intermédiaire du premier accord, le la bémol à la quatrième
voix, doit rester dans le même empilement que la note haute. Pour y
-remédier, nous réglons le @code{force-hshift} -- qui est une propriété
-de @code{NoteColumn} -- de cette note sur zéro.
+remédier, nous pourrions utiliser @code{\shiftOff}, ce qui
+malheureusement générera des avertissements au sujet d'empilements qui
+se chevauchent. Nous préférons régler le @code{force-hshift} -- qui est
+une propriété de @code{NoteColumn} -- de cette note sur zéro.
Quant au second accord, il serait préférable que le fa s'aligne avec le
la et que la note la plus basse se positionne un peu plus sur la droite
pour éviter que les hampes se chevauchent. Pour cela, nous réglons le
@code{force-hshift} au niveau du @code{NoteColumn} du ré bémol de telle
sorte qu'il se déplace de la moitié d'un espace de portée vers la
-droite.
+droite et le @code{force-hshift} du fa sur zéro. Vous noterez la
+présence du @code{\once} qui évite la propagation de ces réglages
+au-delà de cet instantn musical particulier -- bien que la présence du
+@code{\once} et du second @code{\override} de la quatrième voix ne
+soient pas indispensables dans ce court extrait, ce ne serait pas
+montrer l'exemple que de les omettre.
Et voici le résultat final :
<<
{ c2 aes4. bes8 }
\\
- {
- <ees, c>2
- \once \override NoteColumn.force-hshift = #0.5
- des2
- }
+ { <ees, c>2 \once \override NoteColumn.force-hshift = #0.5 des }
\\
\\
- {
- \override NoteColumn.force-hshift = #0
- aes'2 f4 fes
- }
+ { \once \override NoteColumn.force-hshift = 0 aes'2
+ \once \override NoteColumn.force-hshift = 0 f4 fes }
>> |
<c ees aes c>1 |
}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: ba8e0139b12ce248a00d8621104117f92bac34a6
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
De même nature qu'un @code{Staff}, mais destiné à n'imprimer que du
rythme. Quelle que soit la hauteur, les notes seront imprimées sur une
-même et unique ligne.
+même et unique ligne ; la sortie MIDI rendra les hauteurs saisies.
@strong{@emph{TabStaff}}
dessous de celui-ci au lieu d'y être imbriqués.
La liste des « agréments » d'un contexte se gère à l'aide des
-instructions @code{\accepts} et @code{\denies} -- @code{\accepts} pour
+instructions @code{\accepts} ou @code{\denies} -- @code{\accepts} pour
ajouter un contexte à la liste, et @code{\denies} pour retirer
-l'agrément. Il est par exemple peu conventionnel que les accords nommés
-apparaissent dans un contexte @code{Staff} ; autrement dit, le contexte
-@code{ChordNames} ne fait pas partie de la « liste d'agréments » du
-contexte @code{Staff} par défaut. Néanmoins, et s'il devait en être
-ainsi, vous pourriez le spécifier.
+l'agrément.
+
+Par exemple, on ne trouve normalement pas de portées regroupées par un
+crochet au sein d'un groupe matérialisé par une accolade et des barres
+d'un seul tenant ; un @code{GrandStaff} n'accepte donc pas, par défaut,
+d'englober un @code{StaffGroup}.
@lilypond[verbatim,quote]
\score {
- \new Staff {
- c' d' e' f'
- \chords { d1:m7 b1:min7.5- }
- }
+ \new GrandStaff <<
+ \new StaffGroup <<
+ \new Staff { c'1 }
+ \new Staff { d'1 }
+ >>
+ \new Staff { \set Staff.instrumentName = bottom f'1 }
+ >>
}
@end lilypond
+Néanmoins, et grâce à une instruction @code{\accepts}, un
+@code{StaffGroup} peut se voir ajouté au contexte @code{GrandStaff} :
+
@lilypond[verbatim,quote]
\score {
- \new Staff {
- c' d' e' f'
- \chords { d1:m7 b1:min7.5- }
- }
+ \new GrandStaff <<
+ \new StaffGroup <<
+ \new Staff { c'1 }
+ \new Staff { d'1 }
+ >>
+ \new Staff { \set Staff.instrumentName = bottom f'1 }
+ >>
\layout {
\context {
- \Staff
- \accepts "ChordNames"
+ \GrandStaff
+ \accepts "StaffGroup"
}
}
}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 5c35684285613e8960e2dd4324559e1ee3774b9b
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 5c35684285613e8960e2dd4324559e1ee3774b9b
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@lilypondfile[verbatim,quote,texidoc,doctitle]
{chord-glissando-in-tablature.ly}
+
+@cindex hammer on
+@cindex pull off
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{hammer-on-and-pull-off.ly}
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{hammer-on-and-pull-off-using-voices.ly}
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{hammer-on-and-pull-off-using-chords.ly}
@seealso
Manuel de notation :
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 5c35684285613e8960e2dd4324559e1ee3774b9b
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@menu
* Création de fichiers MIDI::
* Instrument MIDI::
-* Le bloc MIDI::
* Contenu de la sortie MIDI::
* Répétitions et MIDI::
* Gestion des nuances en MIDI::
@translationof Creating MIDI files
LilyPond générera un fichier MIDI dès que vous ajouterez un bloc
-@code{\midi} à la structure de votre partition, comme ici :
+@code{\midi} au sein du bloc @code{\score} :
@example
\score @{
@var{@dots{}musique@dots{}}
+ \layout @{ @}
\midi @{ @}
@}
@end example
-Lorsque le bloc @code{\score} contient un bloc @code{\midi} mais pas de
-bloc @code{\layout}, LilyPond ne produira qu'une sortie MIDI. Si donc
-vous avez besoin aussi d'un support visuel, vous devrez aussi mentionner
-un bloc @code{\layout}.
+Lorsque le bloc @code{\score} contient uniquement un bloc @code{\midi}
+(autrement dit pas de bloc @code{\layout}), LilyPond produira uniquement
+la sortie MIDI -- aucun support visuel ne sera généré.
@example
\score @{
@var{@dots{}musique@dots{}}
\midi @{ @}
- \layout @{ @}
@}
@end example
indications de nuances, crescendos et decrescendos sont traduits en
niveau de volume ; les indications sous la forme d'une fraction
déterminée du volume disponible, et crescendos et decrescendos sous la
-forme d'une progression linéaire entre les deux extrêmes. Le rendu des
-indications de nuance peut être désactivé pour le MIDI -- voir
-@ref{Le bloc MIDI}.
+forme d'une progression linéaire entre les deux extrêmes.
Le tempo initial ainsi que ses changements sont normalement indiqués au
fil de la notation à l'aide de la commande @code{\tempo} ; ils seront
-retranscrits dans le fichier MIDI. La commande @code{\tempo} donne lieu
-à l'impression d'une indication métronomique que vous pouvez toutefois
-rendre invisible, comme indiqué à la rubrique
-@ref{Indication métronomique}. Une autre manière de spécifier le tempo
-initial pour un fichier MIDI est indiquée plus avant -- voir
-@ref{Le bloc MIDI}.
-
-En raison de certaines limitations de Windows, les fichiers MIDI doivent
-y porter l'extension @code{.mid}. D'autres systèmes utilisent
-l'extension @code{.midi}. Si besoin est, placez la ligne suivante au
-début de votre fichier source, avant l'ouverture de tout bloc
-@code{\book}, @code{\bookpart} ou @code{\score} :
+retranscrits dans le fichier MIDI.
+
+Si le bloc @code{\midi} est la plupart du temps laissé vide, il peut
+contenir des aménagements pour certains contextes, la définition de
+contextes particuliers ou du code permettant de déterminer la valeur de
+certaines propriétés. L'exemple suivant détermine le tempo initial du
+fichier MIDI tout en se passant de son indication sur la partition
+imprimée :
@example
-#(ly:set-option 'midi-extension "midi")
+\score @{
+ @var{@dots{}music@dots{}}
+ \midi @{
+ \tempo 4 = 72
+ @}
+@}
@end example
-Cette ligne déterminera @code{.midi} comme extension par défaut pour les
-fichiers MIDI.
+Notez bien que @code{\tempo} est une commande chargée de définir des
+propriétés en cours d'interprétation de la musique. Intervenant dans le
+cadre de définitions d'une sortie, comme ici un bloc @code{\midi}, elle
+est réinterprétée comme une modification de contexte.
-Vous pouvez aussi le faire en ligne de commande :
+@cindex MIDI, définition de contexte
+
+La syntaxe permettant de définir un contexte pour le @code{\midi} est en
+tout point identique à celle que vous utilisez dans le bloc
+@code{\layout}, à ceci près que le « graveur » est remplacé par un
+« interprète » (@emph{performer} en anglais).
@example
-lilypond … -dmidi-extension=midi fichierLily.ly
+\score @{
+ @var{@dots{}music@dots{}}
+ \midi @{
+ \context @{
+ \Voice
+ \remove "Dynamic_performer"
+ @}
+ @}
+@}
@end example
+@noindent
+supprimera les effets de nuance dans la sortie MIDI. Les modules
+chargés de traduire la musique en son s'appellent des « interprètes » --
+@emph{performers} en anglais.
+
+
@snippets
@lilypondfile[verbatim,quote,ragged-right,texidoc,doctitle]
{changing-midi-output-to-one-channel-per-voice.ly}
@knownissues
-@c In 2.11 the following no longer seems to be a problem -td
-@ignore
-Un (de)crescendo non terminé ne sera pas correctement rendu en MIDI --
-il y a nécessairement du silence. Il vous faut donc lui donner une fin
-explicite. Par exemple,
+Certains systèmes d'exploitation requièrent que les fichiers MIDI
+portent l'extension @code{.mid}. Si besoin est, placez la ligne
+suivante au début de votre fichier source, avant l'ouverture de tout
+bloc @code{\book}, @code{\bookpart} ou @code{\score} :
@example
-@{ a4\< b c d\f @}
+#(ly:set-option 'midi-extension "mid")
@end example
-@noindent
-ne fonctionnera pas correctement, contrairement à
+Cette ligne déterminera @code{.midi} comme extension par défaut pour les
+fichiers MIDI.
+
+Vous pouvez aussi le faire en ligne de commande :
@example
-@{ a4\< b c d\!\f @}
+lilypond … -dmidi-extension=mid MonFichier.ly
@end example
-@end ignore
Un changement de volume ne peut intervenir que sur le démarrage d'une
note. C'est la raison pour laquelle la succession d'un crescendo et
d'un diminuendo ne peut se produire sur une même note.
Certains lecteurs MIDI ne rendent pas correctement les changements de
-tempo. MS Windows Media Player et
-@uref{http://@/timidity@/.sourceforge@/.net/,timidity} le font sans
-problème.
+tempo.
+
+
+@seealso
+Fichiers d'initialisation :
+@file{../ly/performer-init.ly}.
+
+Manuel d'initiation :
+@rlearning{Autres sources de documentation}.
+
@node Instrument MIDI
@subsection Instrument MIDI
(@code{"acoustic grand"}).
-@node Le bloc MIDI
-@subsection Le bloc MIDI
-@translationof MIDI block
-
-Dès lors que vous désirez obtenir une sortie MIDI, vous devrez inscrire
-un bloc @code{\midi} au sein du bloc @code{\score}. Son fonctionnement
-est comparable à ce lui du bloc @code{\layout}, voire plus simple. Si
-le bloc @code{\midi} est la plupart du temps laissé vide, il peut
-contenir des aménagements pour certains contextes, la définition de
-contextes particuliers ou du code permettant de déterminer la valeur de
-certaines propriétés. L'exemple suivant détermine le tempo initial du
-fichier MIDI tout en se passant de son indication sur la partition
-imprimée.
-
-@example
-\score @{
- @var{@dots{}musique@dots{}}
- \midi @{
- \tempo 4 = 72
- @}
-@}
-@end example
-
-Ici, le tempo est fixé à 72 noires à la minute. Spécifier un tempo de
-la sorte ne permet pas de donner une valeur pour une note pointée. Vous
-devrez, en pareil cas, subdiviser la note pointée en durée plus courte.
-Par exemple, indiquer 90 à la noire pointée est équivalent à spécifier
-270 croches à la minute :
-
-@example
-tempoWholesPerMinute = #(ly:make-moment 270/8)
-@end example
-
-@cindex MIDI et définition de contexte
-@cindex contexte, définition en MIDI
-
-La syntaxe permettant de définir un contexte pour le @code{\midi} est en
-tout point identique à celle que vous utilisez dans le bloc
-@code{\layout}, à ceci près que le @qq{graveur} est remplacé par un
-@qq{interprète}. Les différents contextes disponibles en matière de
-MIDI sont répertoriés dans le fichier d'initialisation
-@file{../ly/performer-init.ly} -- pour plus de détail, voir
-@rlearning{Autres sources de documentation}.
-Si vous voulez vous passer des nuances dans votre fichier MIDI, il vous
-suffit d'insérer les lignes suivantes dans votre bloc
-@code{\midi@{ @}}.
-
-@example
-\midi @{
- @dots{}
- \context @{
- \Voice
- \remove "Dynamic_performer"
- @}
-@}
-@end example
-
-LilyPond ne générera de sortie MIDI que si vous incluez un bloc
-@code{\midi} dans la structure de la partition, initialisée par la
-commande @code{\score}.
-
-@example
-\score @{
- @{ @dots{}notes@dots{} @}
- \midi @{ @}
-@}
-@end example
-
-
@node Contenu de la sortie MIDI
@subsection Contenu de la sortie MIDI
@translationof What goes into the MIDI output?
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 44c3a53cb34d08a57838ae56c407216277e4c3f0
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@appendixsec Modificateurs d'accord usuels
@translationof Common chord modifiers
-Le tableau suivant indique les différents modificateurs utilisables en
-mode accords (@code{\chordmode}) qui permettent d'obtenir les structures
-habituelles d'un certain nombre d'accords.
+Le tableau suivant indique les différents modificateurs qui permettent
+d'obtenir les structures habituelles d'un certain nombre d'accords.
-@multitable {Treizieme de dominante} {Treizieme de dominante} {Modificateur(s)} {ExempleExemple}
+@multitable @columnfractions .2 .25 .2 .15 .2
@item
-@b{Type d'accord}
+@b{Type}
@tab
-@b{Intervalles}
+@b{Intervalle}
@tab
-@b{Modificateur(s)}
+@b{Modificateur}
@tab
@b{Exemple}
+@tab
+@b{Résultat}
@item
Majeur
@tab
-Tierce majeure et quinte juste
+Tierce majeure @*et quinte juste
@tab
@code{5} ou rien
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:5
-}
+@code{c1:5}
+@tab
+@lilypond[line-width=2.1\cm,notime]
+<<
+ \chords { c1:5 }
+ \chordmode { c1:5 }
+>>
@end lilypond
@item
Mineur
@tab
-Tierce mineure et quinte juste
+Tierce mineure @*et quinte juste
@tab
@code{m} ou @code{m5}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m
-}
+@code{c1:m}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m }
+ \chordmode { c1:m }
+>>
@end lilypond
@item
Augmenté
@tab
-Tierce majeure et quinte augmentée
+Tierce majeure et @*quinte augmentée
@tab
@code{aug}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:aug
-}
+@code{c1:aug}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:aug }
+ \chordmode { c1:aug }
+>>
@end lilypond
@item
Diminué
@tab
-Tierce mineure et quinte diminuée
+Tierce mineure et @*quinte diminuée
@tab
@code{dim}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:dim
-}
+@code{c1:dim}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:dim }
+ \chordmode { c1:dim }
+>>
@end lilypond
@item
Septième de dominante
@tab
-Triton majeur et septième mineure
+Triton majeur et @*septième mineure
@tab
@code{7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:7
-}
+@code{c1:7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:7 }
+ \chordmode { c1:7 }
+>>
@end lilypond
@item
Septième majeure
@tab
-Triton majeur et septième majeure
+Triton majeur et @*septième majeure
@tab
@code{maj7} ou @code{maj}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj7
-}
+@code{c1:maj7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj7 }
+ \chordmode { c1:maj7 }
+>>
@end lilypond
@item
Septième mineure
@tab
-Triton mineur et septième mineure
+Triton mineur et @*septième mineure
@tab
@code{m7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m7
-}
+@code{c1:m7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m7 }
+ \chordmode { c1:m7 }
+>>
@end lilypond
@item
Septième diminuée
@tab
-Triton diminué et septième diminuée
+Triton diminué et @*septième diminuée
@tab
@code{dim7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:dim7
-}
+@code{c1:dim7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:dim7}
+ \chordmode { c1:dim7 }
+>>
@end lilypond
@item
Septième augmentée
@tab
-Triton augmenté et septième mineure
+Triton augmenté et @*septième mineure
@tab
@code{aug7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:aug7
-}
+@code{c1:aug}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:aug7 }
+ \chordmode { c1:aug7 }
+>>
@end lilypond
@item
Septième semi-diminuée
@tab
-Triton diminué et septième mineure
+Triton diminué et @*septième mineure
@tab
@code{m7.5-}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m7.5-
-}
+@code{c1:m7.5-}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m7.5- }
+ \chordmode { c1:m7.5- }
+>>
@end lilypond
@item
Accord mineur avec septième majeure
@tab
-Triton mineur et septième majeure
+Triton mineur et @*septième majeure
@tab
@code{m7+}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m7+
-}
+@code{m7+}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m7+ }
+ \chordmode { c1:m7+ }
+>>
@end lilypond
@item
Sixte majeure
@tab
-Triton majeur et sixte
+Triton majeur @*et sixte
@tab
@code{6}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:6
-}
+@code{c1:6}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:6 }
+ \chordmode { c1:6 }
+>>
@end lilypond
@item
Sixte mineure
@tab
-Triton mineur et sixte
+Triton mineur @*et sixte
@tab
@code{m6}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m6
-}
+@code{c1:m6}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m6 }
+ \chordmode { c1:m6 }
+>>
@end lilypond
@item
Neuvième de dominante
@tab
-Septième de dominante et neuvième majeure
+Septième de dominante @*et neuvième majeure
@tab
@code{9}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:9
-}
+@code{c1:9}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:9 }
+ \chordmode { c1:9 }
+>>
@end lilypond
@item
Neuvième majeure
@tab
-Septième majeure et neuvième majeure
+Septième majeure et @*neuvième majeure
@tab
@code{maj9}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj9
-}
+@code{c1:maj9}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj9 }
+ \chordmode { c1:maj9 }
+>>
@end lilypond
@item
Neuvième mineure
@tab
-Septième mineure et neuvième majeure
+Septième mineure et @*neuvième majeure
@tab
@code{m9}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m9
-}
+@code{c1:m9}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m9 }
+ \chordmode { c1:m9 }
+>>
@end lilypond
@item
Onzième de dominante
@tab
-Neuvième de dominante et onzième juste
+Neuvième de dominante @*et onzième juste
@tab
@code{11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:11
-}
+@code{c1:11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:11 }
+ \chordmode { c1:11 }
+>>
@end lilypond
@item
Onzième majeure
@tab
-Neuvième majeure et onzième juste
+Neuvième majeure @*et onzième juste
@tab
@code{maj11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj11
-}
+@code{c1:maj11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj11 }
+ \chordmode { c1:maj11 }
+>>
@end lilypond
@item
Onzième mineure
@tab
-Neuvième mineure et onzième juste
+Neuvième mineure @*et onzième juste
@tab
@code{m11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m11
-}
+@code{c1:m11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m11 }
+ \chordmode { c1:m11 }
+>>
@end lilypond
@item
Treizième de dominante
@tab
-Neuvième de dominante et treizième majeure
+Neuvième de dominante @*et treizième majeure
@tab
@code{13}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:13
-}
+@code{c1:13}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:13 }
+ \chordmode { c1:13 }
+>>
@end lilypond
@item
Treizième de dominante
@tab
-Onzième de dominante et treizième majeure
+Onzième de dominante @*et treizième majeure
@tab
@code{13.11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:13.11
-}
+@code{c1:13.11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords{ c1:13.11 }
+ \chordmode { c1:13.11 }
+>>
@end lilypond
@item
Treizième majeure
@tab
-Onzième majeure et treizième majeure
+Onzième majeure et @*treizième majeure
@tab
@code{maj13.11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj13.11
-}
+@code{c1:maj13.11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj13.11 }
+ \chordmode { c1:maj13.11 }
+>>
@end lilypond
@item
Treizième mineure
@tab
-Onzième mineure et treizième majeure
+Onzième mineure et @*treizième majeure
@tab
@code{m13.11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m13.11
-}
+@code{c1:m13.11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m13.11 }
+ \chordmode { c1:m13.11 }
+>>
@end lilypond
@item
Seconde suspendue
@tab
-Seconde majeure et quinte juste
+Seconde majeure @*et quinte juste
@tab
@code{sus2}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:sus2
-}
+@code{c1:sus2}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:sus2 }
+ \chordmode { c1:sus2 }
+>>
@end lilypond
@item
Quarte suspendue
@tab
-Quarte juste et quinte juste
+Quarte juste @*et quinte juste
@tab
@code{sus4}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:sus4
-}
+@code{c1:sus4}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:sus4 }
+ \chordmode { c1:sus4 }
+>>
@end lilypond
@item
-Power chord (deux voix)
+Power chord @*(deux voix)
@tab
Quinte juste
@tab
@code{1.5}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- \powerChords
- c1:1.5
-}
+@code{\powerChords c1:1.5}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+\chordmode { \powerChords c1:1.5 }
@end lilypond
@item
-Power chord (trois voix)
+Power chord @*(trois voix)
@tab
-Quinte juste et octave
+Quinte juste @*et octave
@tab
@code{1.5.8}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- \powerChords
- c1:1.5.8
-}
+@code{\powerChords c1:1.5.8}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+ \chordmode { \powerChords c1:1.5.8 }
@end lilypond
@end multitable
@appendixsec Diagrammes d'accord prédéfinis
@translationof Predefined fretboard diagrams
-La liste suivante répertorie les tablatures prédéfinies pour la guitare.
+@menu
+* Diagrammes pour guitare::
+* Diagrammes pour ukulele::
+* Diagrammes pour mandoline::
+@end menu
+
+
+@node Diagrammes pour guitare
+@unnumberedsubsec Diagrammes pour guitare
+@translationof Diagrams for Guitar
@lilypondfile[line-width=15.5\cm]{display-predefined-fretboards.ly}
-La liste suivante répertorie les tablatures prédéfinies pour le ukulele.
+
+@node Diagrammes pour ukulele
+@unnumberedsubsec Diagrammes pour ukulele
+@translationof Diagrams for Ukulele
@lilypondfile[line-width=15.5\cm]{display-predefined-ukulele-fretboards.ly}
-La liste suivante répertorie les tablatures prédéfinies pour la
-mandoline.
+
+@node Diagrammes pour mandoline
+@unnumberedsubsec Diagrammes pour mandoline
+@translationof Diagrams for Mandolin
@lilypondfile[line-width=15.5\cm]{display-predefined-mandolin-fretboards.ly}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 0
+ Translation of GIT committish: d5fc7a079db0853bfb49e21821226d492f01cf8c
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Une partie de percussions utilisant plusieurs instruments requiert en
général une portée de plusieurs lignes, où chaque hauteur sur la
-portée représente un instrument à percussion.
-
-Pour saisir cette musique, il faut que les notes soient situées dans
-des contextes @code{DrumStaff} et @code{DrumVoice}.
+portée représente un instrument à percussion. La gravure d'une telle
+musique requiert que les notes soient situées dans des contextes
+@code{DrumStaff} et @code{DrumVoice}.
@lilypond[quote,verbatim]
up = \drummode {
@table @code
@item drums-style
-La notation par défaut : une batterie standard, sur une portée de cinq lignes.
+La notation par défaut : une batterie standard, sur une portée de cinq
+lignes.
@lilypond[quote,line-width=10.0\cm]
nam = \lyricmode {
}
@end lilypond
-Vous aurez remarqué ici l'allongement des barres de mesures par
+Vous aurez remarqué ici l'allongement des barres de mesure par
l'instruction
@w{@code{\override Staff.BarLine.bar-extent #'(de . à)}}. Il faut
aussi définir la position des deux lignes de la portée -- voir à ce
Des notes fantômes peuvent être créées pour les parties de percussion,
grâce à la commande @code{\parenthesize} décrite à la rubrique
-@ref{Parenthèses}. Cependant, le mode @code{\drummode} n'inclut pas par
-défaut le graveur @code{Parenthesis_engraver} qui permet d'imprimer ces
-signes.
+@ref{Parenthèses}.
@lilypond[quote,ragged-right,verbatim]
-\new DrumStaff \with {
- \consists "Parenthesis_engraver"
-}
+\new DrumStaff
<<
\context DrumVoice = "1" { s1 }
\context DrumVoice = "2" { s1 }
<<
{
hh8[ hh] <hh sn> hh16
- < \parenthesize sn > hh
- < \parenthesize sn > hh8 <hh sn> hh
+ \parenthesize sn hh
+ \parenthesize sn hh8 <hh sn> hh
} \\
{
bd4 r4 bd8 bd r8 bd
>>
@end lilypond
-@noindent
-Notez que les commandes @code{\parenthesize} obligent à ajouter des
-accords -- sous la forme @code{< >} -- autour de chaque élément.
-
@seealso
Morceaux choisis :
@rlsr{Percussion}.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: b7cb11ea159572f2dc55b405db01a06c4dccea7d
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
La propriété @code{measureLength} est abordée plus en détail au chapitre
@ref{Gestion du temps}.
-@funindex \inStaffSegno
-
-La commande @code{\inStaffSegno} permet d'adjoindre un symbole de
-@emph{segno} à une commande @code{\repeat volta}. Des symboles
-alternatifs de barre de mesure peuvent sont accessibles, dans un
-contexte @code{Score}, à l'aide des propriétés @code{segnoType},
-@code{startRepeatSegnoType}, @code{endRepeatSegnoType} ou
-@code{doubleRepeatSegnoType} selon les besoins.
-
-@lilypond[verbatim,quote,relative=1]
-e1
-\repeat volta 2 {
- \inStaffSegno
- f2 g a b
-}
-c1_"D.S." \bar "|."
-@end lilypond
-
@cindex reprise et liaison de prolongation
@cindex alternative et liaison de prolongation
@cindex liaison de prolongation et reprise
}
@end lilypond
+@cindex reprise et segno
+@cindex segno et reprise
+@funindex \inStaffSegno
+
+La commande @code{\inStaffSegno} permet de générer une barre de mesure
+composite par l'adjonction d'un symbole de @emph{segno} à une barre de
+reprise créée par une commande @code{\repeat volta}. Qu'il s'agisse
+d'un début, d'une fin ou d'une double reprise, le type de barre est
+automatiquement sélectionné. L'indication « D.S. » devra cependant être
+
+En dehors de toute reprise :
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\inStaffSegno
+f2 g a b
+c1_"D.S." \bar "|."
+@end lilypond
+
+Au début d'une reprise :
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ \inStaffSegno % start repeat
+ f2 g a b
+}
+c1_"D.S." \bar "|."
+@end lilypond
+
+En fin de reprise :
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ f2 g a b
+ \inStaffSegno % end repeat
+}
+f2 g a b
+c1_"D.S." \bar "|."
+@end lilypond
+
+Entre deux reprises :
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ f2 g a b
+}
+\inStaffSegno % double repeat
+\repeat volta 2 {
+ f2 g a b
+}
+c1_"D.S." \bar "|."
+@end lilypond
+
+Des symboles alternatifs de barre de mesure sont aussi accessibles, dans
+un contexte @code{Score}, à l'aide des propriétés @code{segnoType},
+@code{startRepeatSegnoType}, @code{endRepeatSegnoType} ou
+@code{doubleRepeatSegnoType} selon les besoins. Ces types de barre
+alternative doivent être choisis parmi les types prédéfinis ou
+préalablement créés à l'aide d'une commande @code{\defineBarLine} --
+voir @ref{Barres de mesure}.
+
+@lilypond[verbatim,quote,relative=1]
+\defineBarLine ":|.S[" #'(":|." "S[" "")
+\defineBarLine "]" #'("]" "" "")
+e1
+\repeat volta 2 {
+ f2 g a b
+ \once \set Score.endRepeatSegnoType = ":|.S["
+ \inStaffSegno
+}
+f2 g \bar "]" a b
+c1_"D.S." \bar "|."
+@end lilypond
+
@snippets
@lilypondfile[verbatim,quote,texidoc,doctitle]
{shortening-volta-brackets.ly}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: e038863ba7228eb3e28b9f1a49e68ec9f4d260b0
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Par ailleurs, la commande @code{\inStaffSegno} crée une barre de mesure
surmontée d'un @emph{segno}, et sait coopérer avec l'instruction
-@code{\repeat volta}.
+@code{\repeat volta} -- voir @ref{Répétitions courantes}.
@cindex bar de mesure, personnalisation
@cindex définition d'une barre de mesure
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 0
+ Translation of GIT committish: d5fc7a079db0853bfb49e21821226d492f01cf8c
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@funindex <...>
Un accord est formé en mettant une série de hauteurs entre @code{<}
-et @code{>}. Un accord peut être suivi d'une durée comme une simple
+et @code{>}. Un accord peut être suivi d'une durée comme une simple
note.
@lilypond[verbatim,quote,relative=2]
@end lilypond
@cindex accord vide
-@cindex placeholder events
+@cindex substituant pour événement
Un accord peut se voir comme un conteneur de notes, articulations et
autres éléments rattachés. Par voie de conséquence, un accord dépourvu
l'exception de la première qui, elle, sera positionnée en fonction de la
première hauteur mentionnée dans l'accord précédent ou de la note
individuelle précédente. Les autres notes au sein de l'accord se
-positionnent relativement à la précédente.
+positionnent relativement à la précédente @emph{dans cet accord}.
@lilypond[verbatim,quote,relative=2]
<a c e>1 <f a c> <a c e> <f' a c> <b, e b,>
@rlsrnamed{Simultaneous notes, Notes simultanées}.
@knownissues
-Un accord comportant plus de deux notes dans le même @qq{espace de
-portée} -- tel que @samp{<e f! fis!>} -- conduit immanquablement à des
+Un accord comportant plus de deux notes dans le même « espace de
+portée » -- tel que @samp{<e f! fis!>} -- conduit immanquablement à des
chevauchements. En fonction de la situation, un meilleur rendu peut
nécessiter de recourir à
relation d'octave entre les accords dès avant leur expansion. Dans le
cas présent, l'intégralité du bloc @code{\relative} intérieur n'affecte
en rien ce qui l'entoure, ce qui explique la spécification d'octave
-attachée à la dernière note.
+attachée à la dernière note :
@c Without \new Voice, implicit voice creation does the dumbest thing.
@lilypond[verbatim,quote]
ont des rythmes identiques. Dès que vous tenterez d'attacher sur une
même hampe des notes de durée différente, vous générerez des erreurs.
Notes, articulations et modifications de propriétés au sein d'un même
-@code{Voice} sont enregistrés et gravés selon l'ordre musical :
+@code{Voice} sont enregistrées et gravées selon l'ordre musical :
@lilypond[quote,verbatim,relative=2]
<a c>4-. <>-. << c a >> << { c-. <c a> } { a s-. } >>
@end lilypond
-La présence de plusieursdifférentes hampes, ligatures, durées ou
-propriétés au même instant musical nécessite l'utilisation de plusieurs
-voix.
+La présence de plusieurs hampes, ligatures, durées ou propriétés au même
+instant musical nécessite l'utilisation de plusieurs voix.
Dans l'exemple suivant, l'expression simultanée génère implicitement
plusieurs portées :
@example
warning: ignoring too many clashing note columns
-@emph{en français :}
-Avertissement : trop d'empilements de notes se chevauchent. On fera au mieux.
+@emph{en français :}
+Avertissement : trop d'empilements de notes se chevauchent. On fera au mieux.
@end example
lors de la compilation. Le déclenchement de cet avertissement peut être
Un cluster indique un agrégat de sons. On peut le représenter par une
plage limitée par un @emph{ambitus} (notes extrêmes). On obtient une
-telle notation en appliquant la fonction @code{makeClusters} à une
+telle notation en appliquant la fonction @code{\makeClusters} à une
séquence d'accords, comme
@lilypond[quote,relative=2,verbatim]
@translationof Single-staff polyphony
@cindex polyphonie, portée simple
+@cindex portée simple et polyphonie
@cindex voix
@cindex paroles assignées à une voix
@funindex \oneVoice
@funindex oneVoice
-@strong{@i{Instanciation explicite des voix}}
+@subsubsubheading{Instanciation explicite des voix}
La manière la plus facile d'entrer des fragments avec plus d'une voix
sur une portée est la suivante@tie{}:
collisions. La commande @code{\oneVoice} permet de retrouver les
réglages par défaut.
-@strong{@i{Polyphonie temporaire}}
+@subsubsubheading{Polyphonie temporaire}
Un fragment temporairement polyphonique se construit de la manière
suivante@tie{}:
Vous remarquerez que les commandes @code{\voiceOne} et @code{\voiceTwo}
permettent d'obtenir des réglages différents pour chacune des voix.
-@strong{@i{La construction avec un double antislash}}
+@subsubsubheading{La construction avec un double antislash}
@cindex couches
@cindex calques
@funindex \\
-Une construction de la forme @code{<< @{...@} \\ @{...@} >>}, dans
-laquelle plusieurs expressions sont séparées par des doubles obliques
-inversées, se comporte différemment de celle sans séparateur@tie{}:
+Une construction de la forme @code{<< @{@dots{}@} \\ @{@dots{}@} >>},
+dans laquelle plusieurs expressions sont séparées par des doubles
+obliques inversées, se comporte différemment de celle sans séparateur :
@strong{tous} les membres de cette construction seront assignés à de
nouveaux contextes de voix. Ces contextes de voix, créés implicitement,
portent les noms @code{"1"}, @code{"2"}, etc. Dans chacun de ces
contextes, le positionnement des liaisons, la direction des hampes, etc.
-sont réglés de manière appropriée. En voici un exemple@tie{}:
+sont réglés de manière appropriée. En voici un exemple :
@lilypond[quote,relative=3,verbatim]
<<
@rlearning{Contextes et graveurs} et
@rlearning{Instanciation explicite des voix}.
-@strong{@i{Ordre des voix}}
+@subsubsubheading{Ordre des voix}
L'ordre dans lequel doivent apparaître les voix d'une construction
simultanée suit le schéma suivant@tie{}:
@warning{Paroles et objets étendus (liaisons, soufflets etc.) ne peuvent
passer d'une voix à l'autre.}
-@strong{@i{Identité rythmique}}
+@subsubsubheading{Identité rythmique}
Lorsque l'on doit saisir des fragments de musique parallèle qui ont le
même rythme, on peut les combiner dans un contexte de voix unique et par
>>
@end lilypond
-La commande @code{\voiceNeutralStyle} permet de revenir à la
+La commande @code{\voiceNeutralStyle} permet de revenir à une
présentation normale.
@predefined
@unnumberedsubsubsec Regroupement automatique de parties
@translationof Automatic part combining
-@cindex regroupement automatique de parties
+@cindex combinateur de parties
@cindex parties, combiner des
@cindex combinaison de parties
@cindex a due
aura toujours ses hampes dirigées vers le haut et sera notée @qq{Solo},
alors que la deuxième, appelée @code{two}, aura des hampes vers le bas
et sera notée @qq{Solo@tie{}II}. Les parties à l'unisson seront
-estampillées d'un @qq{a2} par défaut.
+par défaut estampillées d'un @qq{a2}.
LilyPond interprète dans un contexte @code{Voice} chacun des arguments
fournis à @code{\partcombine}. Si vous travaillez avec des octaves
commandes qui permettent d'influencer le comportement de la fonction
@code{\partcombine}@tie{}:
-Les commandes se terminant par @code{...Once} n'affectent que la note
-qui les suit directement dans l'expression musicale.
+Les commandes se terminant par @code{@dots{}Once} n'affectent que la
+note qui les suit directement dans l'expression musicale.
@itemize
@item
>>
@end lilypond
+
+@subsubsubheading Utilisation de @code{\partcombine} et paroles
+
+@cindex \partcombine et paroles
+
+La commande @code{\partcombine} n'est pas conçue pour traiter des
+paroles ; si l'une des voix est explicitement nommée, afin de lui
+adjoindre des paroles, le combinateur de parties cessera de fonctionner.
+Toutefois, le recours à un contexte @code{NullVoice} permet d'obtenir
+les effets escomptés -- voir @ref{Polyphonie et paroles communes}.
+
+
@snippets
@lilypondfile[verbatim,quote,texidoc,doctitle]
{combining-two-parts-on-the-same-staff.ly}
@rinternals{Voice}.
@knownissues
-Les différentes commandes @code{\partcombine...} ne prennent en charge
-que deux voix. De la même manière, le combinateur n'est pas conçu pour
-travailler avec des paroles@tie{}; il s'arrête dès qu'il est
+Les différentes commandes @code{\partcombine@dots{}} ne prennent en
+charge que deux voix. De la même manière, le combinateur n'est pas
+conçu pour travailler avec des paroles@tie{}; il s'arrête dès qu'il est
explicitement fait appel à l'une des voix pour y attacher des paroles.
-@code{\partcombine...} ne peut s'inscrire ni dans un bloc @code{\times},
-ni dans un bloc @code{\relative}.
+@code{\partcombine@dots{}} ne peut s'inscrire ni dans un bloc
+@code{\tuplet} ni dans un bloc @code{\relative}.
Lorsque @code{printPartCombineTexts} est actif et que les deux voix
jouent souvent les mêmes notes, le combinateur peut afficher @code{a2}
@code{\partcombine} n'examine que l'attaque des notes. Il n'est donc
pas en mesure de déterminer si une note attaquée précédemment est encore
-jouée ou non, ce qui peut engendrer quelques problèmes.
+jouée ou non, ce qui peut engendrer quelques problèmes, entre autres des
+indications de @qq{Solo} ou @qq{Unison} incorrectement placées.
+
+@code{\partcombine} conserve les objets étendus (liaisons, soufflets,
+etc.) dans la même voix de sorte à éviter qu'ils soient improprement ou
+pas du tout imprimés lorsque leur départ ou terminaison est dans une
+voix différente.
En interne, @code{\partcombine} interprète les deux arguments en tant
que @code{Voice}s, dénommées @code{one} et @code{two}, puis décide de
quand les parties seront fusionnées. Par conséquent, si les arguments
-changent pour d'autres noms de contexte @rinternals{Voice}, les
+changent pour d'autres noms de contexte @code{Voice}, les
événements qu'ils contiendraient seront ignorés.
Certaines considérations apparaissent aussi dans les chapitres
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: e038863ba7228eb3e28b9f1a49e68ec9f4d260b0
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
alignToZero = \with {
\override VerticalAxisGroup.nonstaff-relatedstaff-spacing = #zero-space
\override VerticalAxisGroup.nonstaff-nonstaff-spacing = #zero-space
+ \override VerticalAxisGroup.staff-affinity = #DOWN
+ \remove Text_engraver % avoid having two
+ \consists Text_engraver
}
lowerCaseChords = \with {
chordNameLowercaseMinor = ##t
}
-staffAffinityDown = \with {
- \override VerticalAxisGroup.staff-affinity = #DOWN
-}
labelContext =
#(define-music-function
(parser location context)
(string?)
- #{ s1*0^\markup { \typewriter #context } #})
+ #{ s1*0^\markup { \upright {\typewriter #context } } #})
\layout {
\context { \Dynamics \alignToZero }
\context { \FiguredBass \alignToZero }
\context { \Lyrics \alignToZero }
- \context { \NoteNames \alignToZero \staffAffinityDown }
- \context { \ChordNames \alignToZero
- \staffAffinityDown
- \lowerCaseChords }
- \context { \FretBoards \alignToZero \staffAffinityDown }
+ \context { \NoteNames \alignToZero }
+ \context { \ChordNames \alignToZero \lowerCaseChords }
+ \context { \FretBoards \alignToZero }
\context { \Score
\omit BarLine
\override DynamicText.self-alignment-X = #-1
\override FretBoard.X-offset = #1.75
- \override InstrumentName.minimum-Y-extent = #'(-2 . 2)
- \override InstrumentName.extra-offset = #'(0 . -0.5)
- \override TextScript.minimum-Y-extent = #'(-2 . 3)
+ \override InstrumentName.minimum-Y-extent = #'(-1 . 2)
+ \textLengthOn
\omit TimeSignature
}
}
%% Contextes dont le point de référence est la ligne de base :
%% ChordNames, NoteNames et Lyrics
<<
- \new ChordNames { \chords { g1:m } }
- \new NoteNames { s1 | g1 | }
- \new RhythmicStaff {
- \set RhythmicStaff.instrumentName = #"ligne de base (baseline) "
- \textLengthOn
- \labelContext "ChordNames" s1 |
- \labelContext "NoteNames" s1 |
- \labelContext "Lyrics" s1 |
- }
- \new Lyrics { \lyrics { \skip 1*2 | ghijk1 | } }
+ \new ChordNames { \chords { \labelContext "ChordNames" g1:m } }
+ \new NoteNames { s1 |\labelContext "NoteNames" g1 | }
+ \new Lyrics { \lyrics { \skip 1*2 | \labelContext "Lyrics" ghijk1 | } }
+ \new RhythmicStaff \with { instrumentName = #"ligne de base (baseline) " } s1*3
>>
%% Le point de référence de Dynamics est le milieu du « m » dans la fonte
<<
- \new RhythmicStaff {
- \set RhythmicStaff.instrumentName = #"mi-hauteur "
- \labelContext "Dynamics" s1*3
- }
- \new Dynamics { s1\mp s\fp }
+ \new Dynamics { \labelContext "Dynamics" s1\mp s\fp }
+ \new RhythmicStaff \with { instrumentName = #"mid-hauteur " } s1*3
>>
%% Le point de référence de FiguredBass est son point le plus haut
<<
- \new RhythmicStaff {
- \set RhythmicStaff.instrumentName = #"point le plus haut "
- \labelContext "FiguredBass" s1
- }
- \new FiguredBass { \figuremode { <6 5>1 } }
+ \new FiguredBass { \labelContext "FiguredBass" \figuremode { <6 5>1 } }
+ \new RhythmicStaff \with { instrumentName = #"point le plus haut " } s1
>>
%% Le point de référence de FretBoards est la ligne du haut
\include "predefined-guitar-fretboards.ly"
<<
- \new FretBoards { \chordmode { e1 } }
- \new RhythmicStaff {
- \set RhythmicStaff.instrumentName = #"ligne du haut "
- \labelContext "FretBoards " s1
- }
+ \new FretBoards { \labelContext "FretBoards" \chordmode { e1 } }
+ \new RhythmicStaff \with { instrumentName = #"ligne du haut " } s1
>>
@end lilypond
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 5c35684285613e8960e2dd4324559e1ee3774b9b
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Le nom de l'instrument qui est répliqué sera imprimé dès lors qu'aura
été définie la propriété @code{instrumentCueName} d'un contexte
@code{CueVoice} temporaire. Le positionnement et le style adopté par
-@code{instrumentCueName} dépendent de l'objet @code{\instrumentSwitch}
+@code{instrumentCueName} dépendent de l'objet @code{InstrumentSwitch}
-- voir @ref{Noms d'instrument}. Par ailleurs, si la citation nécessite
l'apparition d'une clef différente, celle-ci devra être introduite
manuellement, tout comme l'originale qui devra être rappelée en fin de
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 5c35684285613e8960e2dd4324559e1ee3774b9b
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@c leave this as samp. -gp
Un mélisme sur la dernière syllabe d'un mot est indiqué par une longue
-ligne horizontale basse s'étirant jusqu'à syllabe suivante. Une telle
-ligne, que nous appellerons prolongateur ou extenseur, s'obtient en
-saisissant @samp{ __ } (notez les espaces entourant le double caractère
-souligné).
+ligne horizontale basse s'étirant jusqu'à la syllabe suivante. Une
+telle ligne, que nous appellerons prolongateur ou extenseur, s'obtient
+en saisissant @samp{ __ } (notez les espaces entourant le double
+caractère souligné).
@warning{Dans une partition, les mélismes, ou vocalises, sont
matérialisés par une ligne de prolongation. On l'indique par un double
}
@end lilypond
-Et ce quel que soit le nombre de @qq{couplets} :
+Et ce quel que soit le nombre de « couplets » :
@lilypond[verbatim,quote]
\score {
Cette identité de structure n'est toutefois pas possible lorsque les
paroles sont différentes. Des instructions @code{\skip} devront venir
-s'insérer dans les paroles pour @qq{sauter} les notes des alternatives
+s'insérer dans les paroles pour « sauter » les notes des alternatives
qui ne les concernent pas.
N'utilisez pas de simple caractère souligné pour sauter une note.
Lorsqu'une note se prolonge sur les alternatives, la tenue est
indiquée normalement pour la première alternative, et à l'aide de
l'instruction @code{\repeatTie} pour les suivantes. Cette liaison
-@qq{de répétition} pose problème en matière d'alignement des paroles
+« de répétition » pose problème en matière d'alignement des paroles
puisque la longueur de l'alternative est accrue en raison de la liaison.
D'autre part, une liaison de prolongation crée un mélisme qui sera
effectif pour la première alternative, mais pas pour les autres. La
-solution pour @qq{recaler} les paroles consiste à désactiver
+solution pour « recaler » les paroles consiste à désactiver
temporairement la détection automatique de mélismes et insérer des
-@qq{blancs}.
+« blancs ».
@lilypond[quote,verbatim]
\score {
Le contexte @code{NullVoice} doit prendre place dans un contexte
@code{Staff} et ne saurait contenir que des notes déjà présentes sur la
-portée en question, au même octave. Dans le cas contraire, ce
+portée en question et à la même octave. Dans le cas contraire, ce
@code{NullVoice} pourrait interagir avec les autres voix imprimées de
façon inopinée. Par exemple, des notes arbitraires dans un
@code{NullVoice} pourraient entraîner l'apparition ou la disparition
d'altérations sur la portée considérée.
-Cette faà on de procéder permet par ailleurs d'utiliser la fonction
+Cette façon de procéder permet par ailleurs d'utiliser la fonction
@code{\partcombine} qui normalement ne peut s'utiliser avec des
paroles :
>>
@end lilypond
+@knownissues
+La commande @code{\addLyrics} ne peut traiter que des paroles attachées
+à un contexte @code{Voice} ; elle ne peut donc s'utiliser avec un
+@code{NullVoice}.
+
@noindent
La fonction @code{\partcombine} est abordée en détails dans
@ref{Regroupement automatique de parties}.
-Pour finir, cette méthode est aussi utilkisable lorsque les voix sont
+Pour finir, cette méthode est aussi utilisable lorsque les voix sont
sur des portées différentes, et ne se limite pas à deux voix :
@lilypond[quote,verbatim]
@noindent
le texte du premier couplet s'aligne de manière habituelle sur la
-mélodie nommée @qq{lahlah}. Mais le second couplet, tout d'abord
+mélodie nommée « lahlah ». Mais le second couplet, tout d'abord
rattaché au contexte @code{lahlah}, bascule sur la mélodie
-@code{alternative} pour les syllabes @qq{ran} à @qq{sau} grâce aux lignes
+@code{alternative} pour les syllabes « ran » à « sau » grâce aux lignes
@example
\new Lyrics \lyricsto "lahlah" @{
@item
L'impression de diagrammes d'accord, lorsque l'accompagnement est fait à
-la guitare, est expliqué à la rubrique @qq{Tablatures sous forme
-d’étiquette}, au chapitre @ref{Vue d'ensemble des cordes frettées}.
+la guitare, est expliqué à la rubrique « Tablatures sous forme
+d’étiquette », au chapitre @ref{Vue d'ensemble des cordes frettées}.
@end itemize
@item
Un @emph{livret} contenant l'intégralité des dialogues et le texte des
passages chantés. On y trouve aussi très souvent les indications de
-mise en scène. Bien que LilyPond soit capable de @qq{typographier} un
+mise en scène. Bien que LilyPond soit capable de « typographier » un
livret, n'oubliez pas qu'il n'y a dans ce cas pas de musique, et que
d'autres outils pourraient être mieux appropriés.
@item
Les portées vides sont la plupart du temps éliminées d'un conducteur ou
d'une partition de chœur. La réalisation d'une telle partition -- les
-anglophones la disent @qq{à la française} -- est expliquée à la rubrique
+anglophones la disent « à la française » -- est expliquée à la rubrique
@ref{Masquage de portées}.
@item
s'avérer pratique de détourner l'utilisation de la fonction
@code{\instrumentSwitch} pour gérer les différentes interventions de
l'un ou de l'autre ; vous devrez auparavant avoir établi la
-définition d'un @qq{instrument} pour chacun des rôles en question :
+définition d'un « instrument » pour chacun des rôles en question :
@lilypond[quote,verbatim]
\addInstrumentDefinition #"kaspar"
Les barres de mesure sont absentes dans la plupart des cas ; celles
que vous rencontrerez seront raccourcies ou en pointillé, dans le but
-d'indiquer une @qq{respiration}. Le fait de supprimer le graveur de
+d'indiquer une « respiration ». Le fait de supprimer le graveur de
barres de mesure produira des portées sans barre :
@lilypond[verbatim,quote]
chaque verset et généralement séparées par une double barre. Il n'est
fait usage que de rondes et de blanches, et la première mesure de chaque
moitié contient un simple accord de rondes. Il s'agit donc des notes
-correspondant au @qq{récitatif}. Ces cantiques sont traditionnellement
+correspondant au « récitatif ». Ces cantiques sont traditionnellement
centrés sur la page.
@lilypond[verbatim,quote]
<form action="http://google.com/search"
method="get"
name="search"
- onSubmit="search.q.value='site:lilypond.org/doc/v2.17 '
+ onSubmit="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onMouseMove="search.q.value='site:lilypond.org/doc/v2.17 '
+ onMouseMove="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onKeyUp="search.q.value='site:lilypond.org/doc/v2.17 '
+ onKeyUp="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value">
<input type="hidden" name="btnG" value="Recherche sur Google">
<input type="text" name="brute_query" onfocus="this.value=''" value="Rechercher">
-%% Translation of GIT committish: 4d1502a7f3c7929e30da8f35a1d177b19eb34f89
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
Une ligne de basse chiffrée peut se positionner au-dessus ou en dessous
d'une partie de basse, grâce à la propriété
-%% Translation of GIT committish: 64d521c30b929ac9be37823df577b8f02c8cf0ee
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
Lorsqu'un glissando s'étend dans la durée, on trouve parfois des
indications temporelles, matérialisées par des hampes sans tête de note.
-%% Translation of GIT committish: 64d521c30b929ac9be37823df577b8f02c8cf0ee
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
Voici comment vous pourriez transcrire du grégorien. Pour mémoire, il
n'y a en grégorien ni découpage en mesure, ni hampe ; seules sont
-%% Translation of GIT committish: 64d521c30b929ac9be37823df577b8f02c8cf0ee
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
L'apparence du chiffre est déterminée par la propriété @code{text} dans
@code{TupletNumber}. La valeur par défaut imprime seulement le
-%% Translation of GIT committish: 64d521c30b929ac9be37823df577b8f02c8cf0ee
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
Obtenir un @emph{grupetto} retardé et dans lequel la note la plus basse
est altérée requiert quelques surcharges. La propriété
@w{@code{outside-staff-priority}} doit être désactivée (@code{#f}) pour
-éviter qu'elle prenne le pas sur la propriété @w{@code{avoid-slur}}. La
-valeur assignée à @code{halign} permet de gérer horizontalement le
-« retard ».
+éviter qu'elle prenne le pas sur la propriété @w{@code{avoid-slur}}.
+L'ajustement du positionnement horizontal s'effectue en jouant sur les
+fractions @code{2/3} et @code{1/3}.
"
doctitlefr = "Création d'un grupetto retardé"
-%% Translation of GIT committish: 0
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
-Contrairement au glissando, un @qq{slide} peut aller d'un point non
+Contrairement au glissando, un « slide » peut aller d'un point non
précisé du manche jusqu'à un fret spécifique. Ceci peut s'indiquer à
l'aide d'une note d'ornement masquée précédant la note effectivement
jouée, comme dans l'exemple suivant.
--- /dev/null
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
+ texidocfr = "
+Dans le cadre de notes en accord, les @emph{hammer-on} et
+@emph{pull-off} sont induqués par un arc simple. Vous obtiendrez
+néanmoins un arc double en réglant la propriété @code{doubleSlurs} sur
+@code{#t}.
+
+"
+ doctitlefr = "Hammer on et pull off avec accords"
--- /dev/null
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
+ texidocfr = "
+L'arc des @emph{hammer-on} et @emph{pull-off} est ascendant dans les
+voix une et trois, et descendant dans les voix deux et quatre.
+
+"
+ doctitlefr = "Hammer on et pull off gérés par les voix"
--- /dev/null
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
+ texidocfr = "
+@emph{Hammer-on} et @emph{pull-off} peuvent s'indiquer par des liaisons.
+
+"
+ doctitlefr = "Hammer on et pull off"
-%% Translation of GIT committish: 4d1502a7f3c7929e30da8f35a1d177b19eb34f89
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
Certaines indication de nuance requièrent un complément textuel, comme
« sempre pp ». Dans la mesure où les nuances sont habituellement
-%% Translation of GIT committish: 64d521c30b929ac9be37823df577b8f02c8cf0ee
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
Les « incipits » peuvent faire partie de l'objet @code{InstrumentName},
tout en définissant de manière indépendante le nom de l'instrument et
-%% Translation of GIT committish: 64d521c30b929ac9be37823df577b8f02c8cf0ee
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
Bien que compliqué de prime abord, voici un canevas tout à fait indiqué
pour les ensembles de jazz. Vous noterez que tous les instruments sont
-%% Translation of GIT committish: 64d521c30b929ac9be37823df577b8f02c8cf0ee
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
Une modification de la propriété @code{transparent} permet d'imprimer un
objet « à l'encre sympathique » : l'objet n'est pas affiché bien que tous
-%% Translation of GIT committish: 64d521c30b929ac9be37823df577b8f02c8cf0ee
+%% Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
texidocfr = "
L'affectation de la valeur @code{#t} à la propriété @code{breakable},
combinée à @code{after-line-breaking}, permet la rupture d'une
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 0a8b4e0f1b0d68659a584be48c7b96da358d501d
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
filetype off
set runtimepath+=/usr/local/share/lilypond/current/vim/
filetype on
+syntax on
@end example
@noindent
@menu
* Extraction de plusieurs fragments d'une grande partition::
-* Insertion du résultat de LilyPond dans OpenOffice.org::
+* Insertion du résultat de LilyPond dans OpenOffice et LibreOffice::
* Insertion du résultat de LilyPond dans d'autres programmes::
@end menu
@ruser{Extraction de fragments musicaux}.
-@node Insertion du résultat de LilyPond dans OpenOffice.org
-@unnumberedsubsec Insertion du résultat de LilyPond dans OpenOffice.org
-@translationof Inserting LilyPond output into OpenOffice.org
+@node Insertion du résultat de LilyPond dans OpenOffice et LibreOffice
+@unnumberedsubsec Insertion du résultat de LilyPond dans OpenOffice et LibreOffice
+@translationof Inserting LilyPond output into OpenOffice and LibreOffice
@cindex OpenOffice.org
+@cindex LibreOffice.org
@uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond} permet
-d'insérer directement des partitions LilyPond dans OpenOffice.org.
+d'insérer directement des partitions LilyPond dans OpenOffice ou
+LibreOffice.
@node Insertion du résultat de LilyPond dans d'autres programmes
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: a9d95f320e4b9fe65e0655911ea7b55bf0d10b2b
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@tab Supprime, lors du nommage des fichiers résultant, la partie
correspondant au répertoire des fichiers sources.
+@item @code{strokeadjust}
+@tab @code{#f}
+@tab Force l'ajustement des traits PostScript. Cette option trouve
+toute son utilité pour générer du PDF à partir de PostScript --
+l'ajustement des traits est en principe automatiquement activé pour les
+périphériques bitmap à faible résolution. Sans cette option, les
+visionneurs de PDF ont tendance à ne pas rendre de manière constante
+l'épaisseur des hampes dans les résolutions habituelles des écrans.
+Bien que n'affectant pas notoirement la qualité d'impression, cette
+option accroit notablement la taille des fichiers PDF.
+
@item @code{svg-woff}
@tab @code{#f}
@tab Utilise, avec le moteur SVG, les fontes @code{woff}.
\input texinfo @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@ignore
- Translation of GIT committish: 2f50167dc8769e690b985c3b92cabdc35a725344
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@divClass{heading-center}
@divClass{contactBox}
Si vous avez connaissance d'autres \topic\ qui mériteraient de figurer
-ici, faites le nous savoir, en suivant les instructions de la rubrique
-@ref{Signalement de bogue}.
+ici, faites le nous savoir, en nous écrivant sur la liste bug-lilypond.
+Si vous n'en êtes pas déjà membre, vous pouvez y souscrire à partir de
+sa @uref{https://lists.gnu.org/mailman/listinfo/bug-lilypond,
+page d'information} ou laisser un message par l'intermédiaire de
+@uref{http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs,
+l'interface gmane de lilypond.bugs}.
@divEnd
@divEnd
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@c This file is part of web.texi
@ignore
- Translation of GIT committish: 0f062fdb1c08e46bce7aa3047ee3c7f68e686079
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@divClass{column-center-top}
@subheading Paquetage générique ou paquetage spécifique à la distribution
-De nombreuses distributions incluent LilyPond dans leur choix de
-paquetages. Ces versions sont plus faciles à installer ou désinstaller
-qu'un paquetage générique, mais peuvent être plus anciennes. Si vous
-avez l'intention d'utiliser notre paquetage générique, veuillez tout
-d'abord désinstaller la version officielle de votre distribution à
-l'aide de votre gestionnaire de paquets habituel. Référez-vous à la
-documentation de votre distribution pour savoir comment l'utiliser.
+De nombreuses distributions incluent LilyPond dans le choix de
+paquetages de leurs dépôts. Ces versions sont plus faciles à installer
+ou désinstaller que le paquetage générique que vous trouverez ici. La
+version de LilyPond disponible sur ces dépôts peut être notablement plus
+ancienne que la version stable en cours. Si vous avez l'intention
+d'utiliser notre paquetage générique, veillez à ce que votre éditeur de
+fichiers LilyPond fait appel à la version correcte de lilypond -- voir
+@ref{Facilités d'édition}.
@divEnd
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@c This file is part of web.texi
@ignore
- Translation of GIT committish: 0a8b4e0f1b0d68659a584be48c7b96da358d501d
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Introduisez des fragments de partition musicale sans avoir besoin de
copier-coller manuellement des images. Intégrez de façon transparente
des partitions dans un document @LaTeX{} ou HTML, ou ajoutez des
-partitions dans un document OpenOffice.org.
+partitions dans un document OpenOffice.org ou LibreOffice. Vous
+trouverez des greffons qui permettent d'insérer du code LilyPond dans
+des @emph{blogs} et @emph{wikis}, rendant ainsi possible le travail
+collaboratif en ligne.
@subsubheading Accessibilité
@divClass{keep-bullets}
@itemize
+@item
+@uref{http://www.aurelienbello.com/,Aurélien Bello} a réorchestré
+@emph{Der Ring des Nibelungen} de Richard Wagner en une
++@uref{http://www.rsb-online.de/content/konzerte/wagnerzyklus-10-13/wagner-fuer-kinder/index_ger.html,version en 100 minutes pour enfants}.
+Celle-ci est écrite pour orchestre symphonique traditionnel et un nombre
+réduit de chanteurs. Elle sera donnée les 5 et 6 avril 2014 au Atze
+Musiktheater de Berlin, par l'orchestre radio-symphonique de Berlin sous
+la direction de Heiko Matthias Förster.
+
+@item
+Joe Smeets a réalisé les partitions du livre pour enfants @emph{Zing
+Mee} (@emph{Chanter}) d'Annie M.G. publié chez Querido -- ISBN
+9789045106205
+@uref{http://www.queridokinderenjeugdboeken.nl/web/Boek.htm?dbid=18954&typeofpage=134707,
+www.queridokinderenjeugdboeken.nl} --, les partitions de chœur d'une
+traduction en hollandais du @emph{Saint Nicolas} de Benjamin Britten
+donné en 2011 par le @emph{Muziektheater Hollands Diep} --
+@uref{http://www.muziektheaterhollandsdiep.nl/nl/voorstellingen/sint_nicolaas_leeft, www.muziektheaterhollandsdiep.nl}.
+Il réalise le conducteur et le matériel d'un arrangement pour quatuor à
+vent, piano et percussions, du @emph{Boris Godounov} de Modeste
+Moussorgski, qui sera donné en 2014, toujours par le @emph{Muziektheater
+Hollands Diep}.
+
@item
Pour sa thèse de doctorat,
@uref{http://unito.academia.edu/LucaRossettoCasel, Luca Rossetto
De plus amples informations sont disponibles à la page @ref{Manuels}.
+Ben Lemon, utilisateur de LilyPond, a réalisé plusieurs
+@uref{http://benlemon.me/blog/music/lilypond/operation-lilypond/,
+tutoriels audiovisuels} qui s'adressent aux nouveaux utilisateurs et sont
+visibles sur son @emph{blog}.
@subsubheading Environnements d'édition confortables
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@c This file is part of web.texi
@ignore
- Translation of GIT committish: c66c7bc1b97947e74978c20ffbf55f2c6e2c4d97
+ Translation of GIT committish: d46572826e777ed3e9fa4656535a6e9000f2ed9e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository} :
collection d'exemples, trucs et astuces élaborés par des utilisateurs.
+@item
+@uref{http://benlemon.me/blog/music/lilypond/operation-lilypond/,
+Tutoriels vidéo} : Ben Lemon, utilisateur de LilyPond, a mis en
+ligne sur son @emph{blog} plusieurs tutoriels destinés aux
+nouveaux utilisateurs.
+
@item
@ref{Développement} :
manuels pour la version de développement.
@divClass{keep-bullets}
@itemize
+@item @uref{http://lilypond.org/doc/v2.16/Documentation/web/manuals,
+LilyPond 2.16 Documentation}
+
@item @uref{http://lilypond.org/doc/v2.14/Documentation/web/manuals.fr.html,
LilyPond 2.14 Documentation}
<form action="http://google.com/search"
method="get"
name="search"
- onSubmit="search.q.value='site:lilypond.org +v2.17 '
+ onSubmit="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onMouseMove="search.q.value='site:lilypond.org +v2.17 '
+ onMouseMove="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onKeyUp="search.q.value='site:lilypond.org +v2.17 '
+ onKeyUp="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value">
<input type="hidden" name="btnG" value="Google keresés">
<input type="text" name="brute_query" onfocus="this.value=''" value="Keresés">
texidoc = " Chord names are generated from a list pitches. The
functions which construct these names can be customised. Here are shown
-Jazz chords, following Ignatzek (pp. 17-18, 1995) and
-an alternative Jazz chord notation.
+Jazz chords, following Ignatzek (pp. 17-18, 1995) and an alternative
+Jazz chord notation.
Chords following Banter (1987) can also be printed from this file, but
are turned off for brevity.
}
-chs = \transpose c' c'
-{
- <c e g>1
- <c es g>% m = minor triad
- <c e gis>
- <c es ges> \break
- <c e g bes>
- <c es g bes>
- <c e g b> % triangle = maj
- <c es ges beses>
- <c es ges b> \break
- <c e gis bes>
- <c es g b>
- <c e gis b>
- <c es ges bes>\break
- <c e g a> % 6 = major triad with added sixth
- <c es g a> % m6 = minor triad with added sixth
- <c e g bes d'>
- <c es g bes d'> \break
- <c es g bes d' f' a' >
- <c es g bes d' f' >
- <c es ges bes d' >
- <c e g bes des' > \break
- <c e g bes dis'>
- <c e g bes d' f'>
- <c e g bes d' fis'>
- <c e g bes d' f' a'>\break
- <c e g bes d' fis' as'>
- <c e gis bes dis'>
- <c e g bes dis' fis'>
- <c e g bes d' f' as'>\break
- <c e g bes des' f' as'>
- <c e g bes d' fis'>
- <c e g b d'>
- <c e g bes d' f' as'>\break
- <c e g bes des' f' as'>
- <c e g bes des' f' a'>
- <c e g b d'>
- <c e g b d' f' a'>\break
- <c e g b d' fis'>
- <c e g bes des' f ' a'>
- <c f g>
- <c f g bes>\break
- <c f g bes d'>
- <c e g d'> % add9
- <c es g f'>
- <c e g b fis'> % Lydian
- <c e g bes des' ees' fis' aes'> % altered chord
+chs = \transpose c' c' {
+ <c e g>1
+ <c es g> % m = minor triad
+ <c e gis>
+ <c es ges> \break
+ <c e g bes>
+ <c es g bes>
+ <c e g b> % triangle = maj
+ <c es ges beses>
+ <c es ges b> \break
+ <c e gis bes>
+ <c es g b>
+ <c e gis b>
+ <c es ges bes> \break
+ <c e g a> % 6 = major triad with added sixth
+ <c es g a> % m6 = minor triad with added sixth
+ <c e g bes d'>
+ <c es g bes d'> \break
+ <c es g bes d' f' a' >
+ <c es g bes d' f' >
+ <c es ges bes d' >
+ <c e g bes des' > \break
+ <c e g bes dis'>
+ <c e g bes d' f'>
+ <c e g bes d' fis'>
+ <c e g bes d' f' a'> \break
+ <c e g bes d' fis' as'>
+ <c e gis bes dis'>
+ <c e g bes dis' fis'>
+ <c e g bes d' f' as'> \break
+ <c e g bes des' f' as'>
+ <c e g bes d' fis'>
+ <c e g b d'>
+ <c e g bes d' f' as'> \break
+ <c e g bes des' f' as'>
+ <c e g bes des' f' a'>
+ <c e g b d'>
+ <c e g b d' f' a'> \break
+ <c e g b d' fis'>
+ <c e g bes des' f ' a'>
+ <c f g>
+ <c f g bes> \break
+ <c f g bes d'>
+ <c e g d'> % add9
+ <c es g f'>
+ <c e g b fis'> % Lydian
+ <c e g bes des' ees' fis' aes'> % altered chord
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% alternate Jazz notation
-efullmusicJazzAlt =
-{
- <c e gis>1-\markup { "+" }
- <c e g b>-\markup {
- \normal-size-super
+efullmusicJazzAlt = {
+ <c e gis>1-\markup { "+" }
+ <c e g b>-\markup {
+ \normal-size-super
% \override #'(font-family . math) "N"
- \override #'(font-family . math) "M"
- }
- %%c:3.5.7 = \markup { \override #'(font-family . math) "M" }
- %%c:3.5.7 = \markup { \normal-size-super "maj7" }
-
- <c es ges>-\markup { \super "o" } % should be $\circ$ ?
- <c es ges bes>-\markup { \super \combine "o" "/" }
- <c es ges beses>-\markup { \super "o7" }
+ \override #'(font-family . math) "M"
+ }
+ %%c:3.5.7 = \markup { \override #'(font-family . math) "M" }
+ %%c:3.5.7 = \markup { \normal-size-super "maj7" }
+
+ <c es ges>-\markup { \super "o" } % should be $\circ$ ?
+ <c es ges bes>-\markup { \super \combine "o" "/" }
+ <c es ges beses>-\markup { \super "o7" }
}
efullJazzAlt = #(sequential-music-to-chord-exceptions efullmusicJazzAlt #f)
epartialmusicJazzAlt = {
- <c d>1-\markup { \normal-size-super "2" }
- <c es>-\markup { "m" }
- <c f>-\markup { \normal-size-super "sus4" }
- <c g>-\markup { \normal-size-super "5" }
-
- %% TODO, partial exceptions
- <c es f>-\markup { "m" }-\markup { \normal-size-super "sus4" }
- <c d es>-\markup { "m" }-\markup { \normal-size-super "sus2" }
+ <c d>1-\markup { \normal-size-super "2" }
+ <c es>-\markup { "m" }
+ <c f>-\markup { \normal-size-super "sus4" }
+ <c g>-\markup { \normal-size-super "5" }
+ %% TODO, partial exceptions
+ <c es f>-\markup { "m" }-\markup { \normal-size-super "sus4" }
+ <c d es>-\markup { "m" }-\markup { \normal-size-super "sus2" }
}
epartialJazzAlt = #(sequential-music-to-chord-exceptions epartialmusicJazzAlt #f)
jazzAltProperties = \sequential {
- \set majorSevenSymbol = #whiteTriangleMarkup
- \set chordNameSeparator = #(make-simple-markup "/")
- \set chordNameExceptionsFull = #efullJazzAlt
- \set chordNameExceptionsPartial = #epartialJazzAlt
- \set chordNameFunction = #jazz-chord-names
+ \set majorSevenSymbol = #whiteTriangleMarkup
+ \set chordNameSeparator = #(make-simple-markup "/")
+ \set chordNameExceptionsFull = #efullJazzAlt
+ \set chordNameExceptionsPartial = #epartialJazzAlt
+ \set chordNameFunction = #jazz-chord-names
}
banterProperties = \sequential {
- \set chordNameFunction = #banter-chord-names
+ \set chordNameFunction = #banter-chord-names
}
\score{
- <<
- \new ChordNames {
- \set instrumentName = #"Ignatzek (default)"
- \set shortInstrumentName = #"Def"
- \chs
- }
-
- \new ChordNames {
- \jazzAltProperties
- \set instrumentName = #"Alternative"
- \set shortInstrumentName = #"Alt"
- \chs
- }
-
-%{
-
- %% This is the Banter (1987) style. It gives exceedingly
- %% verbose (wide) names, making the output file take up to 4 pages.
- %% (TODO: how big is is now?)
- %% Turned off by default.
-
- %% TODO: use smaller font for Banter (or remove some esoteric
- %% chords).
-
- \new ChordNames {
- \banterProperties
- \set instrumentName = #"Banter"
- \set shortInstrumentName = #"Ban"
- \chs
- }
-%}
-
- \new Staff \transpose c c' { \chs }
- >>
- \layout {
- \context {
- \ChordNames
- \consists "Instrument_name_engraver"
- }
+ <<
+ \new ChordNames {
+ \set instrumentName = #"Ignatzek (default)"
+ \set shortInstrumentName = #"Def"
+ \chs
}
-}
+ \new ChordNames {
+ \jazzAltProperties
+ \set instrumentName = #"Alternative"
+ \set shortInstrumentName = #"Alt"
+ \chs
+ }
+ %{
+
+ %% This is the Banter (1987) style. It gives exceedingly
+ %% verbose (wide) names, making the output file take up to 4 pages.
+ %% (TODO: how big is is now?)
+ %% Turned off by default.
+ %% TODO: use smaller font for Banter (or remove some esoteric
+ %% chords).
+
+ \new ChordNames {
+ \banterProperties
+ \set instrumentName = #"Banter"
+ \set shortInstrumentName = #"Ban"
+ \chs
+ }
+ %}
+
+ \new Staff \transpose c c' { \chs }
+ >>
+ \layout {
+ \context {
+ \ChordNames
+ \consists "Instrument_name_engraver"
+ }
+ \context {
+ \Score
+ \remove "Bar_number_engraver"
+ }
+ }
+}
\version "2.16.0"
-mychords = \chordmode {c1 c:m c:aug c:dim c:dim7 c:7 c:maj7 c:m7 c:9 \break }
+mychords = \chordmode {
+ c1 c:m c:aug c:dim c:dim7 c:7 c:maj7 c:m7 c:9 \break
+}
chordsline = {
\mychords
\transpose c dis {
\mychords
}
- \transpose c ees {
+ \transpose c ees {
\mychords
}
\transpose c e {
\new FretBoards {
\chordsline
}
- \new Staff {
- \chordsline
- }
>>
+ \layout {
+ \context {
+ \Score
+ \remove "Bar_number_engraver"
+ }
+ }
}
mychords = \chordmode {
- c1 c:m c:aug c:dim7 c:7 c:maj7 c:m7 c:m7.5-
- c:6 c:sus2 c:sus4 c:9
+ c1 c:m c:aug c:dim7 c:7 c:maj7 c:m7 c:m7.5- c:6 c:sus2 c:sus4 c:9
\break
}
\transpose c dis {
\mychords
}
- \transpose c ees {
+ \transpose c ees {
\mychords
}
\transpose c e {
}
}
-<<
- \new ChordNames {
- \chordsline
+\score {
+ <<
+ \new ChordNames {
+ \chordsline
+ }
+ \new FretBoards {
+ \set Staff.stringTunings = #mandolin-tuning
+ \chordsline
+ }
+ >>
+ \layout {
+ \context {
+ \Score
+ \remove "Bar_number_engraver"
+ }
}
- \new FretBoards {
- \set Staff.stringTunings = #mandolin-tuning
- \chordsline
- }
- \new Staff {
- \chordsline
- }
->>
+}
mychords = \chordmode {
- c1 c:m c:aug c:dim c:7 c:maj7 c:m7
- c:6 c:sus2 c:sus4 c:9
- \break
+ c1 c:m c:aug c:dim c:7 c:maj7 c:m7 c:6 c:sus2 c:sus4 c:9 \break
}
chordsline = {
\transpose c dis {
\mychords
}
- \transpose c ees {
+ \transpose c ees {
\mychords
}
\transpose c e {
}
}
-<<
- \new ChordNames {
- \chordsline
+\score {
+ <<
+ \new ChordNames {
+ \chordsline
+ }
+ \new FretBoards {
+ \set Staff.stringTunings = #ukulele-tuning
+ \chordsline
+ }
+ >>
+ \layout {
+ \context {
+ \Score
+ \remove "Bar_number_engraver"
+ }
}
- \new FretBoards {
- \set Staff.stringTunings = #ukulele-tuning
- \chordsline
- }
- \new Staff {
- \chordsline
- }
->>
+}
\input texinfo @c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: 714ec3008267aa3abd4f3bfb05da7eede2eb4e27
+ Translation of GIT committish: 93d725094ee629b2d5200ab5a75b609579a62973
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@end ignore
+@item
+La funzionalità PostScript di regolazione del tratto non viene più
+applicata automaticamente ma lasciata alla discrezione dello strumento
+PostScript (di default, Ghostscript la usa per le risoluzioni fino a
+150dpi quando genera immagini raster). Quando è abilitata, un algoritmo
+di disegno più complesso, progettato per beneficiare della regolazione del
+tratto, viene usato soprattutto per i gambi e le stanghette.
+
+La regolazione del tratto può essere forzata tramite l'opzione da
+linea di comando @samp{-dstrokeadjust}. Quando si generano file
+@code{PDF}, questo produrrà solitamente anteprime @code{PDF} dall'aspetto
+notevolmente migliore ma anche file di dimensione ben superiore. La
+qualità della stampa ad alte risoluzioni non ne risente.
+
+@item
+Esiste un nuovo tipo di contesto chiamato @code{NullVoice} che, sebbene
+non appaia nell'output, può essere usato per allineare il testo vocale. Ciò
+è particolarmente utile se usato in parallelo a un costrutto @code{\partcombine}.
+
+@lilypond[verbatim,quote]
+soprano = \relative c' { c e g c }
+alto = \relative c' { a c e g }
+verse = \lyricmode { This is my song }
+
+\score {
+ \new Staff <<
+ \partcombine \soprano \alto
+ \new NullVoice = "aligner" \soprano
+ \new Lyrics \lyricsto "aligner" \verse
+ >>
+ \layout {}
+}
+@end lilypond
+
+
+
@item
Varie articolazioni possono essere inserite in una sola variabile o restituite
da una funzione di tipo evento:
@c contributor/introduction.itely
@ignore
- Translation of GIT committish: f6443f01a56112f080b8d2e7e646007397bdf6ec
+ Translation of GIT committish: 6671c51302bd71216a7d4c698c475e2abf0d78b4
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
In un progetto complesso come LilyPond, talvolta è difficile sapere da dove
iniziare. Oltre alle possibilità proposte sotto, puoi inviare un
-email al @email{mike@@mikesolomon.org, Frog meister}
-per informarlo sulle tue competenze e chiedergli come aiutare oppure per
-proporre un progetto. Ti farà da guida nel tuo percorso iniziale.
+email alla mailing list @uref{https://lists.gnu.org/mailman/listinfo/lilypond-devel, lilypond-devel@@gnu.org}, e ti aiuteremo nel tuo percorso iniziale.
@end macro
Segnalazione bug: aiuta gli utenti a creare una @rweb{Segnalazione bug}
corretta e/o entra nel Bug Squad per l'organizzazione dei @rcontribnamed{Issues, Problemi}.
-@item
-@rcontrib{Grand Regression Test Checking}: verifica che LilyPond funzioni
-correttamente esaminando l'output dei test. Controllare un frammento di codice
-richiede meno di un minuto!
-
@item
Documentazione: puoi proporre piccole modifiche seguendo le linee
guida per i @rcontribnamed{Documentation suggestions,Consigli per la documentazione}.
e @rcontribnamed{Translating the website,Tradurre il sito web}.
@item
-Correzioni di bug o nuove funzionalità: il miglior modo per iniziare è unirsi
-ai Frogs e leggere @rcontribnamed{Programming work,Lavori di programmazione}.
+Correzioni di bug o nuove funzionalità: leggere @rcontribnamed{Programming work,Compiti per programmatori}.
@end itemize
@macro helpusProjects
@subheading Progetti
-@subsubheading Frog
-
-Sito web e mailing list:
-
-@example
-@uref{http://frogs.lilynet.net}
-@end example
-
-I Frog sono comuni utenti LilyPond che hanno scelto di impegnarsi
-nello sviluppo del loro software preferito. Correggere i bug,
-implementare nuove funzionalità, documentare il codice sorgente: c'è
-molto da fare. Ma soprattutto si tratta di un'occasione per tutti
-per acquisire maggiori conoscenze su LilyPond, il Software Libero e
-la programmazione@dots{} e per divertirsi. Se uno di questi punti
-ti incuriosisce, allora il monito è: @emph{Unisciti ai Frog!}
-
-
@subsubheading Grand LilyPond Input Syntax Standardization
@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: 11cf358d3e89f42616c4361fc3203add5662cf4e
+ Translation of GIT committish: 7fdce4f39834cc8c83f176480cc1d20900eb09f8
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@seealso
+Manuale di apprendimento:
+@ref{Moving objects}.
+
Guida alla notazione: @ruser{Più voci}.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: ff7d82711b47d3d31f26e1e6fc012c4055a20059
+ Translation of GIT committish: 7fdce4f39834cc8c83f176480cc1d20900eb09f8
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
tra oggetti come le pause di più misure, le legature di valore e le
note in voci diverse.
+@item
+@code{horizontal-shift}
+
+@cindex horizontal-shift, proprietà
+@cindex proprietà horizontal-shift
+@cindex colonna di note
+@cindex collisioni di note
+@cindex note, collisioni
+@cindex shift, comandi
+@funindex \shiftOff
+@funindex shiftOff
+@funindex \shiftOn
+@funindex shiftOn
+@funindex \shiftOnn
+@funindex shiftOnn
+@funindex \shiftOnnn
+@funindex shiftOnnn
+
+All'interno di una voce, tutte le note che si trovano nello stesso momento
+musicale sono raggruppate in una colonna di note, e viene creato un oggetto
+@code{NoteColumn} per controllare il posizionamento orizzontale di quel
+gruppo di note (vedi @qq{Colonne di note} in @ref{Explicitly instantiating voices}). Se
+@emph{e solo se} due o più colonne di note in un solo contesto Staff, entrambe
+con i gambi nella stessa direzione, si trovano sullo stesso momento musicale,
+i valori delle loro proprietà @code{horizontal-shift} sono usati per attribuire
+un punteggio e le colonne che hanno un punteggio più alto vengono progressivamente spostate
+per evitare le collisioni delle teste di nota. Questa proprietà viene impostata
+dai comandi @code{\voiceXXX} e può essere scavalcata direttamente con un
+comando @code{\override} o, di solito, dai comandi @code{\shiftOn}.
+Attenzione: questa proprietà viene usata per dare un @emph{punteggio} alle
+colonne di note per spostarle orizzontalmente; non specifica la grandezza dello
+spostamento, che viene aumentata progressivamente per gradi in base alla larghezza della
+testa di nota per ogni punteggio. I gradi sono solitamente di metà della
+larghezza della testa di nota, ma possono essere della larghezza intera della
+testa quando c'è un gruppo di note molto ravvicinate.
+
+
@item
@code{force-hshift}
@cindex proprietà force-hshift
@cindex force-hshift, proprietà
-Le note ravvicinate di un accordo o quelle simultanee appartenenti
-a voci diverse sono disposte su due e talvolta più colonne per
-impedire la sovrapposizione delle teste. Tali colonne si chiamano
-colonne di note (@emph{note columns}) e l'oggetto che provvede a crearle
-si chiama @code{NoteColumn}.
-
La proprietà @code{force-hshift} appartiene a @code{NoteColumn}
(più precisamente all'interfaccia @code{note-column-interface}). Modificandola
-è possibile spostare la colonna di note proporzionalmente,
-assumendo come unità la larghezza della testa della nota nella voce superiore. Si usa
+è possibile spostare la colonna di note in situazioni in cui le colonne di
+note sono sovrapposte. Non ha effetto su colonne di note non sovrapposte.
+Viene specificata in unità appropriate per una colonna di note, ovvero la
+larghezza della testa della nota nella prima voce. Si usa
in situazioni complesse in cui i normali comandi @code{\shiftOn} (vedi
@ref{Explicitly instantiating voices}) non risolvono adeguatamente le collisioni tra le
note. Per questo scopo, è preferibile alla proprietà @code{extra-offset}
@noindent
La nota interna del primo accordo (ovvero il La bemolle della quarta
voce) non deve essere allontanata dalla colonna della nota più
-alta. Per correggerlo impostiamo @code{force-hshift}, una proprietà
-di @code{NoteColumn}, su zero.
+alta. Potremmo pensare di correggerlo con @code{\shiftOff}, ma ciò
+causerebbe degli avvertimenti relativi alla collisione di note. Impostiamo
+invece @code{force-hshift}, una proprietà di @code{NoteColumn}, su zero.
Nel secondo accordo preferiamo che il Fa sia allineato al La bemolle e che
la nota più grave sia posizionata leggermente più a destra, in modo da
evitare la collisione dei gambi. Per farlo dobbiamo impostare
@code{force-hshift} nella colonna (@code{NoteColumn}) del Re bemolle
-grave in modo che si sposti a destra di mezzo spazio di rigo.
+grave in modo che si sposti a destra di mezzo spazio di rigo e @code{force-hshift}
+per il Fa su zero. Si usa @code{\once} per evitare che tali impostazioni
+si propaghino oltre il momento musicale immediato, sebbene in questo
+piccolo esempio il @code{\once} e il secondo @code{\override} nella quarta
+voce potrebbero essere omessi. Ma non sarebbe un esempio di buona pratica.
Ecco il risultato finale:
<<
{ c2 aes4. bes8 }
\\
- {
- <ees, c>2
- \once \override NoteColumn.force-hshift = #0.5
- des2
- }
+ { <ees, c>2 \once \override NoteColumn.force-hshift =
+ 0.5 des }
\\
\\
- {
- \override NoteColumn.force-hshift = #0
- aes'2 f4 fes
- }
+ { \once \override NoteColumn.force-hshift = 0 aes'2
+ \once \override NoteColumn.force-hshift = 0 f4 fes }
>> |
<c ees aes c>1 |
}
@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: bb44469cee5de15e46afbbebd580f898fe5f727b
+ Translation of GIT committish: 873151f815f8b8e27eb5231c74e28392561e4668
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
La proprietà @code{measureLength} è descritta in @ref{Time
administration}.
-@funindex \inStaffSegno
-
-Il comando @code{\inStaffSegno} serve a posizionare il simbolo di segno
-combinandolo col comando @code{\repeat volta}.
-Si possono impostare simboli alternativi delle stanghette modificando nel
-contesto Score le proprietà @code{segnoType}, @code{startRepeatSegnoType},
-@code{endRepeatSegnoType} o @code{doubleRepeatSegnoType}.
-
-@lilypond[verbatim,quote,relative=1]
-e1
-\repeat volta 2 {
- \inStaffSegno
- f2 g a b
-}
-c1_"D.S." \bar "|."
-@end lilypond
@cindex ripetizioni con legature di valore
@cindex finali alternativi con legature di valore
}
@end lilypond
+@funindex \inStaffSegno
+@cindex ripetizioni, con segno
+@cindex segno, con ripetizioni
+
+Il comando @code{\inStaffSegno} può essere usato per generare una stanghetta
+composita che incorpora il simbolo di segno nella stanghetta di ripetizione
+appropriata se usato col comando @code{\repeat volta}. Il tipo corretto di
+stanghetta di ripetizione, ovvero inizio della ripetizione, fine della
+ripetizione e doppia ripetizione, viene selezionato automaticamente. Il
+corrispondente segno @qq{D.S.} deve essere agiunto manualmente.
+
+Lontano da una ripetizione:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\inStaffSegno
+f2 g a b
+c1_"D.S." \bar "|."
+@end lilypond
+
+All'inizio di una ripetizione:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ \inStaffSegno % start repeat
+ f2 g a b
+}
+c1_"D.S." \bar "|."
+@end lilypond
+
+Alla fine di una ripetizione:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ f2 g a b
+ \inStaffSegno % end repeat
+}
+f2 g a b
+c1_"D.S." \bar "|."
+@end lilypond
+
+Tra due ripetizioni:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ f2 g a b
+}
+\inStaffSegno % double repeat
+\repeat volta 2 {
+ f2 g a b
+}
+c1_"D.S." \bar "|."
+@end lilypond
+
+
+Si possono impostare simboli alternativi delle stanghette modificando nel
+contesto Score le proprietà @code{segnoType}, @code{startRepeatSegnoType},
+@code{endRepeatSegnoType} o @code{doubleRepeatSegnoType} per il tipo di
+stanghetta richiesto. I tipi di stanghetta alternativi devono essere
+selezionati dai tipi predefiniti o dai tipi precedentemente definiti col
+comando @code{\defineBarLine} (vedi @ref{Bar lines}).
+
+@lilypond[verbatim,quote,relative=1]
+\defineBarLine ":|.S[" #'(":|." "S[" "")
+\defineBarLine "]" #'("]" "" "")
+e1
+\repeat volta 2 {
+ f2 g a b
+ \once \set Score.endRepeatSegnoType = ":|.S["
+ \inStaffSegno
+}
+f2 g \bar "]" a b
+c1_"D.S." \bar "|."
+@end lilypond
+
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ \inStaffSegno
+ f2 g a b
+}
+c1_"D.S." \bar "|."
+@end lilypond
+
@snippets
@lilypondfile[verbatim,quote,texidoc,doctitle]
{shortening-volta-brackets.ly}
@c -*- coding: utf-8; mode: texinfo; -*-
@ignore
- Translation of GIT committish: 8d26005d0b783e546de362b96fb1b00540875064
+ Translation of GIT committish: 873151f815f8b8e27eb5231c74e28392561e4668
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@end lilypond
Esiste inoltre un comando @code{\inStaffSegno} che crea una stanghetta
-con segno, combinabile col comando@code{\repeat volta}.
+con segno in congiunzione con un'appropriata stanghetta di ripetizione se
+usata con un comando @code{\repeat volta}, vedi @ref{Normal repeats}..
@funindex \defineBarLine
@funindex defineBarLine
@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+ Translation of GIT committish: 9b0c8394bbd8510cfc39c40342879703a4b3d2c1
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
Il nome dello strumento che suona la citazione si imposta con la proprietà
@code{instrumentCueName} in un contesto @code{CueVoice} temporaneo. Il
posizionamento e lo stile di @code{instrumentCueName} è regolato dall'oggetto
-@code{\instrumentSwitch}, vedi @ref{Instrument names}. Se le citazioni in corpo
+@code{instrumentSwitch}, vedi @ref{Instrument names}. Se le citazioni in corpo
più piccolo richiedono un cambio di chiave, si può fare manualmente ma anche
il ripristino della chiave originale dovrà essere fatto manualmente al termine
delle citazioni.
<form action="http://google.com/search"
method="get"
name="search"
- onSubmit="search.q.value='site:lilypond.org/doc/v2.17 '
+ onSubmit="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onMouseMove="search.q.value='site:lilypond.org/doc/v2.17 '
+ onMouseMove="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onKeyUp="search.q.value='site:lilypond.org/doc/v2.17 '
+ onKeyUp="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value">
<input type="hidden" name="btnG" value="Cerca con Google">
<input type="text" name="brute_query" onfocus="this.value=''" value="Cerca">
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
L'ambitus può essere specificato per voce. In tal caso occorre
spostarlo manualmente per evitare collisioni.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Se il rigo ha più di una voce, l'ottavazione in una voce trasporrà
la posizione delle note in tutte le voci per la durata della parentesi
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
I battiti saltati nei glissandi molto lunghi vengono talvolta segnalati
con delle indicazioni di tempo, che consistono solitamente in dei gambi
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
L'incisore @code{Volta_engraver} risiede nel contesto @code{Score}, quindi
le parentesi delle ripetizioni appaiono di norma soltanto sul rigo superiore.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
In alcuni casi di musica polifonica complessa sono necessarie delle voci
ulteriori per evitare le collisioni tra note. Se servono più di
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
La proprietà @code{shortest-duration-space} può essere modificata per cambiare
la forma dei portamenti indeterminati verso il basso o verso l'alto.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Per impostazione predefinita i numeri di battuta sono allineati a destra rispetto
al loro oggetto genitore. Di solito si tratta del margine sinistro della linea
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Per impostazione predefinita, le diteggiature orientate verticalmente sono
poste fuori dal rigo. Tuttavia, questo comportamento può essere annullato.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Si possono impostare due metodi alternativi di numerazione della battuta, utili
specialmente per le ripetizioni.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le note brevi sono disponibili anche con due linee verticali su ciascun
lato della testa invece di una sola e in stile barocco.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Se si aggiunge l'incisore @code{Ambitus_engraver} al contesto @code{Staff} viene
creato un solo ambitus per il rigo, anche nel caso di righi che hanno più
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo esempio mostra come realizzare una trascrizione moderna di musica
gregoriana. La musica gregoriana non presenta la suddivisione in misure né gambi;
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Quando si trascrive musica mensurale, può essere utile inserire all'inizio del
pezzo un incipit che indichi l'intonazione e il tempo originali. Le stanghette
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo modello presenta un modo per impostare un salmo anglicano. Mostra
anche come le strofe possano essere aggiunte come testo separato al di sotto
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
La proprietà @code{shapeNoteStyles} può essere usata per definire vari
stili di teste di nota per ogni grado della scala (definita dall'armatura
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
LilyPond può modificare la direzione del gambo della nota centrale di un
rigo in modo che segua la melodia: occorre aggiungere l'incisore
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Diteggiature e numeri di corda applicati a note individuali evitano
automaticamente le travature e i gambi, ma questo non vale per diteggiature
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le regole relative alle estremità delle travature definite nel contesto @code{Score}
si applicano a tutti i righi, ma possono essere modificate anche ai livelli
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le interruzioni di linea sono di norma proibite quando le travature attraversano
la stanghetta di una battuta. Si può cambiare questo comportamento nel modo
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le travature angolari vengono inserite automaticamente quando viene
rilevata un'ampia distanza tra le teste di nota. Questo comportamento
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Se la pausa multipla dura dieci misure o un numero inferiore a dieci, nel rigo
apparirà una serie di pause di longa e di breve (chiamate in tedesco @qq{Kirchenpausen}
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Quando si usa la funzionalità di combinazione automatica delle parti, si può
modificare il testo delle sezioni soliste e dell'unisono:
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il testo usato per i crescendo e i decrescendo può essere cambiato
modificando le proprietà di contesto @code{crescendoText} e
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
È possibile cambiare le impostazioni predefinite dell'intervallo tra le
teste di nota dell'ambitus e la linea che le collega.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il glifo del respiro può essere modificato sovrascrivendo la proprietà
@code{text} dell'oggetto di formattazione @code{BreathingSign} con
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il numero di punti di aumentazione su una singola nota può essere modificato
in modo indipendente dai punti posizionati dopo la nota.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Per cambiare il tempo del file MIDI senza che appaia l'indicazione metronomica, basta renderla invisibile.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Di norma compare sulla parentesi del gruppo irregolare solo il
numeratore del numero del gruppo irregolare. Ma è possibile
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Lo strumento di unione delle parti (il comando @code{\\partcombine}) permette
di combinare varie parti sullo stesso rigo. Indicazioni testuali come
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il raggruppamento delle pulsazioni all'interno della misura è regolato dalla
proprietà di contesto @code{beatStructure}. I valori di @code{beatStructure} per
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Un glissando contemporaneo senza una nota finale può essere creato usando
una nota nascosta e un tempo di cadenza.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il posizionamento dei numeri della diteggiatura può essere regolato in modo
preciso. Perché l'orientamento funzioni, occorre usare il costrutto per
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
L'ordine verticale degli script è determinato dalla proprietà
@code{'script-priority}. Più il numero è piccolo, più sarà posto
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il comportamento predefinito relativo alla visibilità della parentesi quadra
del gruppo irregolare è di mostrare una parentesi a meno che non ci sia
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Creare un gruppetto ritardato, dove la nota più bassa del gruppetto usa
l'alterazione, richiede vari \override. La proprietà
@code{outside-staff-priority} deve essere impostata su @code{#f}, perché
-altrimenti questa avrebbe la precedenza sulla proprietà @code{avoid-slur}. Il
-valore di @code{halign} serve a posizionare il gruppo orizzontalmente.
+altrimenti questa avrebbe la precedenza sulla proprietà @code{avoid-slur}.
+Cambiando le frazioni @code{2/3} e @code{1/3} si aggiusta la posizione
+orizzontale.
"
doctitleit = "Creare un gruppetto ritardato"
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Si può disegnare un arpeggio che attraversa delle note in voci diverse dello
stesso rigo se si aggiunge l'incisore @code{Span_arpeggio_engraver} nel
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
In un rigo per pianoforte (@code{PianoStaff}), è possibile far sì che un
arpeggio attraversi i righi impostando la proprietà @code{PianoStaff.connectArpeggios}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Si possono creare arpeggi che attraversano i righi in contesti diversi da
@code{GrandStaff}, @code{PianoStaff} e @code{StaffGroup} se l'incisore
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Si possono creare nuove indicazioni metronomiche in modalità testuale, ma
non modificheranno il tempo del file MIDI.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Dato che @code{\\repeat tremolo} si aspetta esattamente due argomenti musicali per
i tremoli di accordi, la nota o l'accordo che cambiano rigo in un tremolo che
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
La direzione predefinita dei gambi sulla linea centrale del rigo si
imposta con la proprietà @code{neutral-direction} dell'oggetto @code{Stem}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Se c'è un solo rigo in uno dei tipi di rigo @code{ChoirStaff} o
@code{StaffGroup}, la parentesi e la stanghetta iniziale non
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Funzioni postfix per estensori testuali personalizzati del crescendo. Gli
estensori devono iniziare sulla prima nota della misura; e bisogna usare
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Si possono definire estensori testuali personalizzati che fanno uso delle
forcine e dei crescendo testuali. @code{\\<} e @code{\\>} generano le
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le legature di valore possono essere disegnate a mano cambiando la
proprietà @code{tie-configuration} dell'oggetto @code{TieColumn}. Il
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
La proprietà @code{tupletSpannerDuration} imposta la durata di ognuno dei
gruppi irregolari compresi tra parentesi dopo il comando @code{\\tuplet}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Un glissando che si estende in vari blocchi @code{\\alternative} può
essere simulato aggiungendo all'inizio di ogni blocco @code{\\alternative}
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
È possibile ottenere delle codette su note isolate e dei tratti di suddivisione all'estremità
della travatura con una combinazione di @code{stemLeftBeamCount},
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Quando il motore tipografico non riesce a risolvere una situazione, si può
usare la sintassi che sovrascrive le decisioni tipografiche. L'unità di
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
L'aspetto delle linee della griglia può essere modificato sovrascrivendo
alcune delle loro proprietà.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Per la musica per chitarra, è possibile mostrare i ritmi di accompagnamento, insieme
alle note della melodia e ai nomi e ai diagrammi degli accordi.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo frammento mostra come nascondere le alterazioni delle note unite alla figura precedente mediante una
legatura di valore all'inizio di un nuovo sistema
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
I cambi di dinamica in stile testuale (come cresc. e dim.) appaiono con
una linea tratteggiata che mostra la loro estensione. Questa linea
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il codice seguente presenta un modo di impostare un inno in cui ogni verso
inizia e finisce con una misura parziale. Mostra anche come aggiungere delle
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
I segni di cesura possono essere creati sovrascrivendo la proprietà @code{'text}
dell'oggetto @code{BreathingSign}. È disponibile anche un segno di cesura
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Si possono stampare anche segni di percentuale isolati.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Ecco un modello piuttosto complesso, per un gruppo jazz. Si noti che tutti
gli strumenti sono in @code{\\key c \\major}. Si tratta della tonalità
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Per permettere a un glissando di andare a capo se capita su un'interruzione di
riga, si impostano le proprietà @code{breakable} e @code{after-line-breaking}
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le legature di portamento possono avere schemi di tratteggio complessi
definendo la proprietà @code{dash-definition}. @code{dash-definition} è
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
In ambito didattico può essere utile rendere più spesso una linea del
rigo (per esempio, la linea centrale, o per sottolineare la linea
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
La formattazione mensurale, in cui le stanghette non appaiono sui righi ma
nello spazio tra i righi, si può ottenere usando @code{StaffGroup} al posto
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le abbreviazioni sono definite in @samp{ly/script-init.ly}, dove sono
assegnati valori predefiniti alle variabili @code{dashHat}, @code{dashPlus},
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il testo a margine di una pausa multipla viene centrato sopra o sotto
di essa. Se il testo è lungo, la misura non si espanderà. Per espandere
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Si può usare la proprietà @code{systemStartDelimiterHierarchy} per creare
gruppi di righi annidati più complessi. Il comando @code{\\set
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
LilyPond fornisce anche funzioni di formattazione che permettono di creare
numeri di gruppi irregolari diversi dalla frazione vera e propria, così come
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il comando @code{\\key} comunemente usato imposta la proprietà
@code{keySignature}, che fa parte del contesto @code{Staff}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le teste di nota con nome della nota usano la proprietà @code{note-names}
dell'oggetto @code{NoteHead} per determinare cosa appaia
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo modello mostra come usare i contesti annidati @code{StaffGroup} e
@code{GrandStaff} per creare sottogruppi degli strumenti dello stesso
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Internamente, @code{\\ottava} imposta le proprietà @code{ottavation} (ad
esempio, su @code{8va} o @code{8vb}) e @code{middleCPosition}. Per
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
La funzione @code{\\autoBeamOff}, se usata insieme a
@code{\\partcombine}, può essere difficile da comprendere.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
I contatori della ripetizione con segno percentuale possono essere mostrati a
intervalli regolari impostando la proprietà di contesto @code{repeatCountVisibility}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le ripetizioni di misura che hanno più di due ripetizioni possono avere
un contatore se si cambia la proprietà opportuna, come mostra questo esempio:
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo esempio artificioso mostra come permettere interruzioni del rigo sia
manuali che automatiche all'interno di un gruppo irregolare con travature.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Ecco un comune doppio pentagramma per pianoforte con un po' di note.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Invece di destinare un rigo a parte alla linea melodica e al suo testo, è
possibile collocare il testo al centro di un doppio pentagramma per pianoforte.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Ecco un tipico formato per canzoni: un rigo con linea melodica e testo,
e sotto l'accompagnamento per pianoforte.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Se si imposta la proprietà @code{'strict-grace-spacing}, le colonne musicali
degli abbellimenti 'fluttuano', ovvero si scollegano dalle note normali:
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Diversamente dalle pause normali, non esiste un comando predefinito per
cambiare la posizione sul rigo di un simbolo di pausa multipla di qualsiasi
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
I testi a margine devono avere la proprietà @code{outside-staff-priority}
impostata su false per poter apparire dentro le legature di portamento.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Secondo le norme tipografiche tradizionali, un segno di bequadro viene
inserito prima di un diesis o di un bemolle se un precedente doppio diesis o
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Quando l'armatura di chiave cambia, vengono inseriti automaticamente i
segni di bequadro per annulare le alterazioni di precedenti armature. Si
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Una stanghetta @code{.|:} può apparire all'inizio di un brano, se si
sovrascrive la proprietà pertinente:
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
I numeri di battuta possono essere resi visbili a intervalli regolari
attraverso la proprietà @code{barNumberVisibility}. In questo esempio
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
I numeri di battuta possono apparire anche all'interno di rettangoli o cerchi.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il segno di dinamica della forcella può avere diversi stili
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le forcelle di dinamica possono essere rappresentate con ua punta
tonda (notazione @qq{al niente}) impostando la proprietà @code{circled-tip}
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
È possibile posizionare le indicazioni alla fine della linea corrente, invece che
all'inizio della linea successiva. In tali casi, può essere preferibile
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Sebbene le indicazioni testuali siano di norma collocate solo sopra il
rigo più alto, è possibile farle apparire su ogni rigo.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Di norma, il metronomo e i numeri di chiamata vengono posizionati sopra il
rigo. Per metterli sotto il rigo basta impostare correttamente la proprietà
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il primo numero di battuta di una partitura viene soppresso se è inferiore
o uguale a `1'. Se si imposta @code{barNumberVisibility} su
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le impostazioni globali predefinite degli abbellimenti sono salvate negli
identificatori @code{startGraceMusic}, @code{stopGraceMusic},
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
I numeri di battuta possono essere tolti rimuovendo l'incisore
@code{Bar_number_engraver} dal contesto @code{Score}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il primo rigo vuoto si può togliere dalla partitura impostando la proprietà
@code{remove-first} di @code{VerticalAxisGroup}. Questa impostazione
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Esistono vari stili di pausa.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Modello per coro SATB (quattro righi)
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Se la nota che termina una forcella si trova sul primo battito di una
battuta, la forcella si ferma prima della stanghetta che precede la
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Esistono tre diversi stili di doppie ripetizioni per le volte, che si
possono impostare con @code{doubleRepeatType}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Se le forcelle sono troppo corte, possono essere allungate modificando
la proprietà @code{minimum-length} dell'oggetto @code{Hairpin}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Per impostazione predefinita, le parentesi delle volte si estendono per
tutta l'alternativa, ma si possono accorciare impostando
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Ecco il modello di un comune spartito semplificato (lead sheet): include
linea melodica, testo vocale e sigle degli accordi.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Vuoi preparare uno spartito semplificato (lead sheet) con melodia e
accordi? La tua ricerca è finita!
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo piccolo modello presenta una semplice linea melodica con un testo. Copialo
e incollalo, aggiungi le note e le parole. Questo esempio disabilita la
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo modello molto semplice mette a disposizione un rigo con delle note ed è
quindi adatto per uno strumento non accompagnato o per un frammento
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il testo separato può essere disposto su varie colonne con i comandi di
@code{\\markup}:
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Si possono impostare i tratti di suddivisione della travatura in modo che siano rivolti
verso la relativa pulsazione. La prima travatura fa sì che non spuntino
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo modello presenta un semplice quartetto d'archi. Impiega anche una
sezione @code{\\global} per definire il tempo e l'armatura di chiave.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il frammento di codice del @qq{Modello per quartetto d'archi} crea un bel
quartetto, ma cosa fare se si ha bisogno di creare le singole parti? Questo
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le travature di note consecutive di un sedicesimo (o più brevi) non
vengono suddivise, ovvero i tre (o più) tratti della travatura si estendono, senza
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Talvolta un'indicazione di tempo non deve mostrare la frazione intera (ad esempio
7/4), ma solo il numeratore (7 in questo caso). Si può ottenere facilmente con
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo esempio usa del codice Scheme per imporre delle modifiche
enarmoniche alle note che permettano di avere il numero minimo di
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il comando @code{\\clef \"treble_8\"} equivale a impostare
@code{clefGlyph}, @code{clefPosition} (che regola la posizione
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
L'aspetto di tutte le espressioni contenute nei blocchi @code{\grace} di un
brano può essere modificato con le funzioni @code{add-grace-property} e
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Si può usare il segno @code{SystemStartSquare} (uno dei segni che delimitano
l'inizio del sistema) impostandolo esplicitamente in un contesto
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
La musica vocale e per fiati usa frequentemente il segno di spunta come segno
di respiro. Questo indica un respiro che sottrae un po' di tempo alla nota
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Alcuni compositori scrivono due legature di portamento per indicare gli
accordi legati. Si può ottenere questo risultato impostando @code{doubleSlurs}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Il gambo barrato presente nelle acciaccature può essere applicato
in altre situazioni.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Le legature di valore vengono usate talvolta per scrivere un arpeggio. In questo
caso, le due note da legare devono non essere consecutive. Per ottenere tale risultato
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Tutti gli oggetti @code{DynamicLineSpanner} (forcelle e testi di dinamica)
sono posti a una distanza minima dal rigo determinata da @code{'staff-padding}.
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo frammento mostra come usare le proprietà di contesto
@code{alignBelowContext} e @code{alignAboveContext} per
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo modello aggiunge una riduzione automatica per pianoforte alla tipica
partitura vocale SATB illustrata in @qq{Modello per complesso vocale}. Si
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo modello è fondamentalmente analogo al semplice modello @qq{Complesso vocale},
con l'unica differenza che qui tutti i versi del testo sono posizionati
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Questo modello crea una partitura che inizia con una sezione solistica e
prosegue in un ritornello a due voci. Illustra anche l'uso delle
-%% Translation of GIT committish: 6e4e9c4eacb94d68c11fd6b9062da4f724114860
+%% Translation of GIT committish: 5db593aa3737cf8c60f9c4c4fcbe317c2d832766
texidocit = "
Ecco una tipica partitura corale a quattro parti, SATB. Se il complesso è più
ampio, è spesso comodo scrivere gli elementi comuni in un'unica sezione, che
@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: 22b4097bcee9f2909b8c43fa69ea313aad0b71c3
+ Translation of GIT committish: 07c022f5e65a806e27c3f5f4f4bdae4020c1af8e
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
filetype off
set runtimepath+=/usr/local/share/lilypond/current/vim/
filetype on
+syntax on
@end example
@noindent
@menu
* Tante citazioni da una grande partitura::
-* Inserire l'output di LilyPond in OpenOffice.org::
+* Inserire l'output di LilyPond in OpenOffice e LibreOffice::
* Inserire l'output di LilyPond in altri programmi::
@end menu
la funzione di ritaglio dei sistemi; si veda @ruser{Extracting fragments of music}.
-@node Inserire l'output di LilyPond in OpenOffice.org
-@unnumberedsubsec Inserire l'output di LilyPond in OpenOffice.org
-@translationof Inserting LilyPond output into OpenOffice.org
+@node Inserire l'output di LilyPond in OpenOffice e LibreOffice
+@unnumberedsubsec Inserire l'output di LilyPond in OpenOffice e LibreOffice
+@translationof Inserting LilyPond output into OpenOffice and LibreOffice
-@cindex OpenOffice.org
+@cindex LibreOffice.org
-La notazione di LilyPond può essere aggiunta a OpenOffice.org con
+La notazione di LilyPond può essere aggiunta a OpenOffice e LibreOffice con
@uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: ff7d82711b47d3d31f26e1e6fc012c4055a20059
+ Translation of GIT committish: 93d725094ee629b2d5200ab5a75b609579a62973
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@tab Non usa le directory dei file di input per costruire i nomi dei file
di output.
+@item @code{strokeadjust}
+@tab @code{#f}
+@tab Forza l'aggiustamento del tratto da parte di PostScript. Questa opzione
+è utile quando il @code{PDF} è generato dall'output PostScript (l'aggiustamento
+del tratto di solito è abilitato automaticamente per gli strumenti bitmap
+a bassa risoluzione). Senza questa opzione, le anteprime@tie{}@code{PDF}
+tendono a produrre larghezze dei gambi molto variabili alle risoluzioni
+tipiche dei monitor. L'opzione non produce effetti visibili sulla
+qualità di stampa e causa un notevole aumento della dimensione dei file
+@code{PDF}.
+
+
@item @code{svg-woff}
@tab @code{#f}
@tab Usa i file di font woff nel backend SVG.
\input texinfo @c -*- coding: utf-8; mode: texinfo; -*-
@ignore
- Translation of GIT committish: a8841c7b9212700f2ebac56e0713afa78a8f0ca0
+ Translation of GIT committish: 0807a75d66c302c6b7fb13c9b586a25ebf0265ad
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@divClass{heading-center}
@divClass{contactBox}
Se sei a conoscenza di un qualsiasi altro \topic\ che possa essere elencato qui,
-sei pregato di farcelo sapere seguendo le istruzioni indicate in
+sei pregato di farcelo sapere scrivendo un messaggio alla mailing list
+bug-lilypond. Se non sei iscritto puoi farlo sulla
+@uref{https://lists.gnu.org/mailman/listinfo/bug-lilypond,pagina di informazioni}
+della lista oppure scrivere direttamente attraverso l'@tie{}
+@uref{http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs,
+interfaccia web di gmane lilypond.bugs}.
+
+
+ seguendo le istruzioni indicate in
@ref{Segnalazione bug}.
@divEnd
@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: 2970311021cf68958850e43911e0cecf51f68fbc
+ Translation of GIT committish: 53ea968b35ad64c914a7bd503786aaf8d3b0c762
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@divClass{column-center-top}
@subheading Pacchetti generici o pacchetti specifici di una distribuzione?
-Molte distribuzioni includono LilyPond nel loro sistema di pacchetti.
-Queste versioni sono più facili da installare e disinstallare rispetto
-ai pacchetti generici, ma potrebbero non essere recenti. Se preferisci usare
-i nostri pacchetti generici, disinstalla la versione ufficiale dal tuo
-sistema usando il gestore di pacchetti della tua distribuzione.
-Leggi la documentazione della tua distribuzione per sapere come usare
-il gestore di pacchetti.
+Molte distribuzioni includono LilyPond nel loro repository di pacchetti
+e questi pacchetti sono spesso molto più facili da installare rispetto
+ai pacchetti generici che si trovano su queto sito. Tuttavia le versioni
+di LilyPond in questi repository sono @emph{molto} più vecchi della versione
+stabile corrente. Se preferisci usare i nostri pacchetti generici, controlla
+che il tuo editor LilyPond stia usando la versione corretta. Vedi @ref{Easier editing}.
@divEnd
@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: f6443f01a56112f080b8d2e7e646007397bdf6ec
+ Translation of GIT committish: 62dd4c2473cba2401ef83ccac3d353959c166399
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@imageFloat{lilypond-book,png,right}
Inserisci frammenti di musica nel testo senza dover tagliare e incollare
-immagini. Integra comodamente la musica in @LaTeX{} o in HTML, o
-aggiungi la musica in OpenOffice.org con OOoLilyPond.
+immagini. Integra comodamente la musica in @LaTeX{} e in HTML, o
+aggiungi la musica in OpenOffice.org o LibreOffice con OOoLilyPond.
@divClass{keep-bullets}
@itemize
+@item
+@uref{http://www.aurelienbello.com/,Aurélien Bello} ha riorchestrato
+@emph{Der Ring des Nibelungen} di Richard Wagner in una
+@uref{http://www.rsb-online.de/content/konzerte/wagnerzyklus-10-13/wagner-fuer-kinder/index_ger.html,100-
+versione ridotta per bambini}.
+È stata scritta per un'orchestra sinfonica standard ma con un cast ridotto di
+cantanti, e verrà eseguita dalla
+@emph{Radio-Sinfonieorchester Berlin} il 5 e 6 Aprile 2014 nel teatro
+Atze Musiktheater di Berlino. Il direttore è Heiko Matthias Förster.
+
+@item
+Joe Smeets ha creato una partitura per il libro di bambini @emph{Zing Mee}
+(@emph{Sing along}) di Annie M.G. pubblicato da Querido -- ISBN
+9789045106205:
+@uref{http://www.queridokinderenjeugdboeken.nl/web/Boek.htm?dbid=18954&typeofpage=134707, www.queridokinderenjeugdboeken.nl}; le partiture delle prove del coro
+per la traduzione olandese del @emph{Saint Nicolas} di Benjamin Britten sono
+state eseguite dal @emph{Muziektheater Hollands Diep} nel 2011:
+@uref{http://www.muziektheaterhollandsdiep.nl/nl/voorstellingen/sint_nicolaas_leeft, www.muziektheaterhollandsdiep.nl}. Attualmente sta lavorando sulla partitura
+e le parti per un arrangiamento del @emph{Boris Godounov} di Moussurgsky per
+quartetto d'archi, pianoforte e percussioni. Verrà eseguita nel 2014,
+di nuovo dal @emph{Muziektheater Hollands Diep}.
+
+
@item
Un'edizione critica di @emph{Enea nel Lazio (1760)} di Tommaso
Traetta, opera seria con libretto di Vittorio Amedeo Cigna-Santi, in
Informazioni più approfondite sono disponibili nei @ref{Manuali}.
+Ben Lemon, un utente di LilyPond, ha creato una serie di
+@uref{http://benlemon.me/blog/music/lilypond/operation-lilypond/,video tutorial}
+sul suo blog che sono rivolti ai nuovi utenti.
+
@subsubheading Editing facilitato
@uref{http://www.tunefl.com}
Con tunefl è possibile scrivere le partiture direttamente online,
-senza bisogno di installare lilypond sul proprio computer. Consente di
+senza bisogno di installare LilyPond sul proprio computer. Consente di
sperimentare tutte le funzionalità del programma usando una comoda
interfaccia web.
@item
@uref{http://lilycomp.sourceforge.net, LilyComp} è un programma grafico ad
inserimento note, che si comporta in modo molto simile a un tastierino numerico
-che produce note di lilypond.
+che produce note di LilyPond.
@end itemize
@c -*- coding: utf-8; mode: texinfo; documentlanguage: it -*-
@ignore
- Translation of GIT committish: 673a3c376246f030f524d3eb3680b6d902c51ad1
+ Translation of GIT committish: fdb9b90f39b33d15d097f69c43c7799b1c1dce9b
When revising a translation, copy the HEAD committish of the
version that you are working on. For details, see the Contributors'
@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}:
esempi, consigli e trucchi creati dagli utenti.
+@item
+@uref{http://benlemon.me/blog/music/lilypond/operation-lilypond/,Video Tutorial}:
+Ben Lemon, un utente di LilyPond, ha creato una serie di video tutorial sul
+suo blog rivolti ai nuovi utenti.
+
+
@item @ref{Sviluppo}:
manuali per la versione non stabile.
@divClass{keep-bullets}
@itemize
+@item @uref{http://lilypond.org/doc/v2.16/Documentation/web/manuals,
+Documentazione di LilyPond 2.16}
+
@item @uref{http://lilypond.org/doc/v2.14/Documentation/web/manuals,
Documentazione di LilyPond 2.14}
For now, though, let us return to the first example and examine the
@code{\score} command, leaving the others to default.
-A @code{\score} block must always contain just one music expression,
-and this must appear immediately after the @code{\score} command.
-Remember that a music expression could be anything from a single
-note to a huge compound expression like
+A @code{\score} block must always contain exactly one music
+expression. Remember that a music expression could be anything
+from a single note to a huge compound expression like
@example
@{
there @emph{is} no mystery. This line explains it all:
@quotation
-@emph{A @code{\score} block must begin with a compound music expression.}
+@emph{A @code{\score} block must contain exactly one music expression.}
@end quotation
@noindent
-To understand what is meant by a music expression and a compound
+To understand what is meant by a
music expression, you may find it useful to review the tutorial,
@ref{Music expressions explained}. In that section, we saw how to
build big music expressions from small pieces -- we started from
@seealso
-Notation Reference: @ruser{Multiple voices}.
+Learning Manual:
+@ref{Moving objects}.
+
+Notation Reference:
+@ruser{Multiple voices}.
@node Voices and vocals
collisions between layout objects like multi-measure rests, ties
and notes in different voices.
+@item
+@code{horizontal-shift}
+
+@cindex horizontal-shift property
+@cindex note column
+@cindex note collisions
+@cindex collisions, notes
+@cindex shift commands
+@funindex \shiftOff
+@funindex shiftOff
+@funindex \shiftOn
+@funindex shiftOn
+@funindex \shiftOnn
+@funindex shiftOnn
+@funindex \shiftOnnn
+@funindex shiftOnnn
+
+Within a voice, all the notes occuring at the same musical moment are
+grouped into a note column, and a @code{NoteColumn} object is created
+to control the horizontal positioning of that group of notes (see
+@qq{Note columns} in @ref{Explicitly instantiating voices}). If
+@emph{and only if} two or more note columns within a single Staff
+context, both with stems in the same direction, occur at the same
+musical moment, the values of their @code{horizontal-shift} properties
+are used to rank them and the columns in the higher ranks are
+progessively offset to avoid collisions of the noteheads. This
+property is set by the @code{\voiceXXX} commands and may be overridden
+directly with an @code{\override} command or, more usually, by the
+@code{\shiftOn} commands. Note that this property is used to
+@emph{rank} the note columns for off-setting - it does not specify the
+magnitude of the offset, which is progressively increased in steps
+based on the note head's width for each rank. The steps are usually
+of half a note head's width, but may be a full note head's width when
+a closely spaced group of notes is involved.
+
@item
@code{force-hshift}
@cindex force-hshift property
-Closely spaced notes in a chord, or notes occurring at the same
-time in different voices, are arranged in two, occasionally more,
-columns to prevent the note heads overlapping. These are called
-note columns, and an object called @code{NoteColumn} is created
-to lay out the notes in that column.
-
The @code{force-hshift} property is a property of a @code{NoteColumn}
(actually of the @code{note-column-interface}). Changing it permits a
-note column to be moved in units appropriate to a note column,
-viz. the note head width of the first voice note. It should be used
-in complex situations where the normal @code{\shiftOn} commands (see
+note column to be moved in situations where the note columns overlap.
+Note that it has no effect on note columns that do not overlap.
+It is specified in units appropriate to a note column, viz. the note
+head width of the first voice note. It should be used in complex
+situations where the normal @code{\shiftOn} commands (see
@ref{Explicitly instantiating voices}) do not resolve the note
-conflict. It is preferable to the @code{extra-offset} property for
-this purpose as there is no need to work out the distance in
-staff-spaces, and moving the notes into or out of a @code{NoteColumn}
-affects other actions such as merging note heads.
+conflict satisfactorily. It is preferable to the @code{extra-offset}
+property for this purpose as there is no need to work out the distance
+in staff-spaces, and moving the notes into or out of a
+@code{NoteColumn} affects other actions such as merging note heads.
@end itemize
@noindent
The inner note of the first chord (i.e. the A-flat in the fourth
Voice) need not be shifted away from the note column of the higher
-note. To correct this we set @code{force-hshift}, which is a property
-of @code{NoteColumn}, of this note to zero.
-
-In the second chord we prefer the F to line up with the A-flat and the
-lowest note to be positioned slightly right to avoid a collision of
-stems. We achieve this by setting @code{force-hshift} in the
+note. We might expect to correct this by using @code{\shiftOff}, but
+this will cause warnings about clashing note columns. Instead, we
+set @code{force-hshift}, which is a property of @code{NoteColumn},
+of this note to zero.
+
+In the second chord we prefer the F to line up with the A-flat and
+the lowest note to be positioned slightly right to avoid a collision
+of stems. We achieve this by setting @code{force-hshift} in the
@code{NoteColumn} of the low D-flat to move it to the right by half
-a staff-space.
+a staff-space, and setting @code{force-hshift} for the F to zero.
+Note that we use @code{\once} to avoid the settings propagating
+beyond the immediate musical moment, although in this small example
+the @code{\once} and the second @code{\override} in Voice four could
+be omitted. This would not be good practice.
Here's the final result:
<<
{ c2 aes4. bes8 }
\\
- {
- <ees, c>2
- \once \override NoteColumn.force-hshift = #0.5
- des2
- }
+ { <ees, c>2 \once \override NoteColumn.force-hshift = 0.5 des }
\\
\\
- {
- \override NoteColumn.force-hshift = #0
- aes'2 f4 fes
- }
+ { \once \override NoteColumn.force-hshift = 0 aes'2
+ \once \override NoteColumn.force-hshift = 0 f4 fes }
>> |
<c ees aes c>1 |
}
<form action="http://google.com/search"
method="get"
name="search"
- onSubmit="search.q.value='site:lilypond.org +v2.17 '
+ onSubmit="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onMouseMove="search.q.value='site:lilypond.org +v2.17 '
+ onMouseMove="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onKeyUp="search.q.value='site:lilypond.org +v2.17 '
+ onKeyUp="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value">
<input type="hidden" name="btnG" value="Zoek met Google">
<input type="text" name="brute_query" onfocus="this.value=''" value="Zoek">
@strong{@emph{RhythmicStaff}}
-Like @code{Staff} but for printing rhythms. Pitches are ignored;
-the notes are printed on one line.
+Like @code{Staff} but for printing rhythms. Pitches are ignored
+when engraving; the notes are printed on one line. The MIDI
+rendition retains pitches unchanged.
@strong{@emph{TabStaff}}
within it.
The @qq{accepts} list of a context can be changed with the
-@code{\accepts} and @code{\denies} commands. @code{\accepts} adds a
+@code{\accepts} or @code{\denies} commands. @code{\accepts} adds a
context to the @qq{accepts} list and @code{\denies} removes a context
-from the list. For example, it would not normally be desirable for
-chord names to be nested within a @code{Staff} context, so the
-@code{ChordNames} context is not included by default in the @qq{accepts}
-list of the @code{Staff} context, but if this were to be required it can
-be done:
+from the list.
+
+For example, a square-braced staff group is not usually found within a
+curved-braced staff with connecting staff bars, and a @code{GrandStaff}
+does not accept a @code{StaffGroup} inside it by default.
@lilypond[verbatim,quote]
\score {
- \new Staff {
- c' d' e' f'
- \chords { d1:m7 b1:min7.5- }
- }
+ \new GrandStaff <<
+ \new StaffGroup <<
+ \new Staff { c'1 }
+ \new Staff { d'1 }
+ >>
+ \new Staff { \set Staff.instrumentName = bottom f'1 }
+ >>
}
@end lilypond
+However, by using the @code{\accepts} command, @code{StaffGroup} can be
+added to the @code{GrandStaff} context:
+
@lilypond[verbatim,quote]
\score {
- \new Staff {
- c' d' e' f'
- \chords { d1:m7 b1:min7.5- }
- }
+ \new GrandStaff <<
+ \new StaffGroup <<
+ \new Staff { c'1 }
+ \new Staff { d'1 }
+ >>
+ \new Staff { \set Staff.instrumentName = bottom f'1 }
+ >>
\layout {
\context {
- \Staff
- \accepts "ChordNames"
+ \GrandStaff
+ \accepts "StaffGroup"
}
}
}
@funindex{\chords}
@code{\chords @{ @dots{} @}} is a shortcut notation for
-@code{\new ChordNames @{ \chordmode @{ @dots{} @}}.
+@code{\new ChordNames @{ \chordmode @{ @dots{} @} @}}.
@lilypond[verbatim,quote,ragged-right]
\chords {
@lilypondfile[verbatim,quote,texidoc,doctitle]
{chord-glissando-in-tablature.ly}
+@cindex hammer on
+@cindex pull off
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{hammer-on-and-pull-off.ly}
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{hammer-on-and-pull-off-using-voices.ly}
+
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{hammer-on-and-pull-off-using-chords.ly}
+
@seealso
Notation Reference:
@ref{Chord repetition},
@menu
* Creating MIDI files::
* MIDI Instruments::
-* MIDI block::
* What goes into the MIDI output?::
* Repeats in MIDI::
* Controlling MIDI dynamics::
@node Creating MIDI files
@subsection Creating MIDI files
-To create a MIDI output file from a LilyPond input file, add a
-@code{\midi} block to a score, for example,
+@cindex MIDI block
+To create a MIDI output file from a LilyPond file, insert a @code{\midi}
+block inside a @code{\score} block;
@example
\score @{
@var{@dots{}music@dots{}}
+ \layout @{ @}
\midi @{ @}
@}
@end example
-If there is a @code{\midi} block in a @code{\score} with no
-@code{\layout} block, only MIDI output will be produced. When
-notation is needed too, a @code{\layout} block must also be
-present.
+If there is @emph{only} a @code{\midi} block in a @code{\score} (i.e.
+without any @code{\layout} block), then @emph{only} MIDI output will be
+produced. No musical notation will be typeset.
@example
\score @{
@var{@dots{}music@dots{}}
\midi @{ @}
- \layout @{ @}
@}
@end example
-Pitches, rhythms, ties, dynamics, and tempo changes are interpreted
-and translated correctly to the MIDI output. Dynamic marks,
-crescendi and decrescendi translate into MIDI volume levels.
-Dynamic marks translate to a fixed fraction of the available MIDI
-volume range. Crescendi and decrescendi make the volume vary
-linearly between their two extremes. The effect of dynamic markings
-on the MIDI output can be removed completely, see @ref{MIDI block}.
-
-The initial tempo and later tempo changes can be specified
-with the @code{\tempo} command within the music notation. These
-are reflected in tempo changes in the MIDI output. This command
-will normally result in the metronome mark being printed, but this
-can be suppressed, see @ref{Metronome marks}. An alternative way
-of specifying the initial or overall MIDI tempo is described below,
-see @ref{MIDI block}.
-
-Due to some limitations on Windows, the default extension for
-MIDI files on Windows is @code{.mid}. Other operating systems still
-use the extension @code{.midi}. If a different extension is preferred,
-insert the following line at the top-level of the input file,
-before the start of any @code{\book}, @code{\bookpart} or @code{\score} blocks:
+Dynamics, pitches, rhythms, tempo changes and ties are all interpreted
+and translated correctly. Dynamic @q{marks} translate into volume
+levels with a @q{fixed fraction} of the available MIDI volume range;
+crescendi and decrescendi make the volume vary linearly between their
+two extremes.
+
+All @code{\tempo} indications, including all subsequent tempo changes,
+specified within the music notation will be reflected in the MIDI
+output.
+
+Usually it is enough to leave the @code{\midi} block empty, but it
+can contain context rearrangements, new context definitions or code
+to set the values of properties. Here the tempo is set to 72
+quarter-note beats per minute, but @emph{only} for the MIDI's
+audio playback.
@example
-#(ly:set-option 'midi-extension "midi")
+\score @{
+ @var{@dots{}music@dots{}}
+ \midi @{
+ \tempo 4 = 72
+ @}
+@}
@end example
-The line above will set the default extension for MIDI files to
-@code{.midi}.
+Note that @code{\tempo} is actually a command for setting properties
+during the interpretation of the music and in the context of output definitions, like a @code{\midi} block, is reinterpreted as if it
+were a context modification.
-Alternatively, this option can also be supplied on the command line:
+@cindex MIDI context definitions
+
+Context definitions follow the same syntax as those in a @code{\layout}
+block;
@example
-lilypond … -dmidi-extension=midi lilyFile.ly
+\score @{
+ @var{@dots{}music@dots{}}
+ \midi @{
+ \context @{
+ \Voice
+ \remove "Dynamic_performer"
+ @}
+ @}
+@}
@end example
+removes the effect of dynamics from the MIDI output. Translation
+modules for sound are called @q{performers}.
+
@snippets
@knownissues
-@c In 2.11 the following no longer seems to be a problem -td
-@ignore
-Unterminated (de)crescendos will not render properly in the midi file,
-resulting in silent passages of music. The workaround is to explicitly
-terminate the (de)crescendo. For example,
+Some operating systems require a @emph{specific} file extension for
+MIDI files. If a different extension is preferred insert the following
+line at the top-level of the input file, before the start of any
+@code{\book}, @code{\bookpart} or @code{\score} blocks;
@example
-@{ a4\< b c d\f @}
+#(ly:set-option 'midi-extension "mid")
@end example
-@noindent
-will not work properly but
+This will set the default extension for MIDI files to @code{.mid}.
+
+Alternatively, an option can be supplied on the command line:
@example
-@{ a4\< b c d\!\f @}
+lilypond -dmidi-extension=mid MyFile.ly
@end example
-@noindent
-will.
-@end ignore
-
Changes in the MIDI volume take place only on starting a note, so
-crescendi and decrescendi cannot affect the volume of a
-single note.
+crescendi and decrescendi cannot affect the volume of a single note.
+
+Some MIDI players may not always correctly handle tempo changes in the
+midi output.
+
+@seealso
+Installed Files:
+@file{../ly/performer-init.ly}.
+
+Learning Manual:
+@rlearning{Other sources of information}.
-Not all midi players correctly handle tempo changes in the midi
-output. Players that are known to work include MS Windows Media
-Player and @uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
@node MIDI Instruments
@subsection MIDI Instruments
the list of MIDI instruments, the Grand Piano (@code{"acoustic grand"})
instrument is used.
-@node MIDI block
-@subsection MIDI block
-@cindex MIDI block
-
-A @code{\midi} block must appear within a score block if MIDI output
-is required. It is analogous to the layout block, but somewhat
-simpler. Often, the @code{\midi} block is left empty, but it
-can contain context rearrangements, new context definitions or code
-to set the values of properties. For example, the following will
-set the initial tempo exported to a MIDI file without causing a tempo
-indication to be printed:
-
-@example
-\score @{
- @var{@dots{}music@dots{}}
- \midi @{
- \tempo 4 = 72
- @}
-@}
-@end example
-
-In this example the tempo is set to 72 quarter note
-beats per minute. @code{\tempo} is actually a music command for
-setting properties during the interpretation of music: in the
-context of output definitions like a @code{\midi} block, as a matter of
-courtesy those are reinterpreted as if they were context modifications.
-
-@cindex MIDI context definitions
-
-Context definitions follow precisely the same syntax as those
-within a @code{\layout} block. Translation modules for sound are
-called performers. The contexts for MIDI output are defined in
-@file{../ly/performer-init.ly},
-see @rlearning{Other sources of information}.
-For example, to remove the effect of dynamics
-from the MIDI output, insert the following lines in the
-@code{\midi@{ @}} block.
-
-@example
-\midi @{
- @dots{}
- \context @{
- \Voice
- \remove "Dynamic_performer"
- @}
-@}
-@end example
-
-MIDI output is created only when a @code{\midi} block is included
-within a score block defined with a @code{\score} command.
-
-@example
-\score @{
- @{ @dots{}notes@dots{} @}
- \midi @{ @}
-@}
-@end example
@node What goes into the MIDI output?
@subsection What goes into the MIDI output?
@node Common chord modifiers
@appendixsec Common chord modifiers
-The following table shows chord modifiers that can be used in
-@code{\chordmode} to generate standard chord structures.
+The following table shows chord modifiers that can be used to generate
+standard chord structures.
-@multitable @columnfractions .2 .3 .2 .2
+@multitable @columnfractions .2 .25 .2 .15 .2
@item
-@b{Chord type}
+@b{Type}
@tab
-@b{Intervals}
+@b{Interval}
@tab
-@b{Modifier(s)}
+@b{Modifier}
@tab
@b{Example}
+@tab
+@b{Output}
@item
Major
@tab
-Major third, perfect fifth
+Major third, @*perfect fifth
@tab
@code{5} or nothing
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:5
-}
+@code{c1:5}
+@tab
+@lilypond[line-width=2.1\cm,notime]
+<<
+ \chords { c1:5 }
+ \chordmode { c1:5 }
+>>
@end lilypond
@item
Minor
@tab
-Minor third, perfect fifth
+Minor third, @*perfect fifth
@tab
@code{m} or @code{m5}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m
-}
+@code{c1:m}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m }
+ \chordmode { c1:m }
+>>
@end lilypond
@item
Augmented
@tab
-Major third, augmented fifth
+Major third, @*augmented fifth
@tab
@code{aug}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:aug
-}
+@code{c1:aug}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:aug }
+ \chordmode { c1:aug }
+>>
@end lilypond
@item
Diminished
@tab
-Minor third, diminished fifth
+Minor third, @*diminished fifth
@tab
@code{dim}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:dim
-}
+@code{c1:dim}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:dim }
+ \chordmode { c1:dim }
+>>
@end lilypond
@item
Dominant seventh
@tab
-Major triad, minor seventh
+Major triad, @*minor seventh
@tab
@code{7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:7
-}
+@code{c1:7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:7 }
+ \chordmode { c1:7 }
+>>
@end lilypond
@item
Major seventh
@tab
-Major triad, major seventh
+Major triad, @*major seventh
@tab
@code{maj7} or @code{maj}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj7
-}
+@code{c1:maj7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj7 }
+ \chordmode { c1:maj7 }
+>>
@end lilypond
@item
Minor seventh
@tab
-Minor triad, minor seventh
+Minor triad, @*minor seventh
@tab
@code{m7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m7
-}
+@code{c1:m7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m7 }
+ \chordmode { c1:m7 }
+>>
@end lilypond
@item
Diminished seventh
@tab
-Diminished triad, diminished seventh
+Diminished triad, @*diminished seventh
@tab
@code{dim7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:dim7
-}
+@code{c1:dim7}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:dim7}
+ \chordmode { c1:dim7 }
+>>
@end lilypond
@item
Augmented seventh
@tab
-Augmented triad, minor seventh
+Augmented triad, @*minor seventh
@tab
@code{aug7}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:aug7
-}
+@code{c1:aug}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:aug7 }
+ \chordmode { c1:aug7 }
+>>
@end lilypond
@item
Half-diminished seventh
@tab
-Diminished triad, minor seventh
+Diminished triad, @*minor seventh
@tab
@code{m7.5-}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m7.5-
-}
+@code{c1:m7.5-}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m7.5- }
+ \chordmode { c1:m7.5- }
+>>
@end lilypond
@item
Minor-major seventh
@tab
-Minor triad, major seventh
+Minor triad, @*major seventh
+@tab
+@code{m7+}
@tab
@code{m7+}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m7+
-}
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m7+ }
+ \chordmode { c1:m7+ }
+>>
@end lilypond
@item
Major sixth
@tab
-Major triad, sixth
+Major triad, @*sixth
@tab
@code{6}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:6
-}
+@code{c1:6}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:6 }
+ \chordmode { c1:6 }
+>>
@end lilypond
@item
Minor sixth
@tab
-Minor triad, sixth
+Minor triad, @*sixth
@tab
@code{m6}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m6
-}
+@code{c1:m6}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m6 }
+ \chordmode { c1:m6 }
+>>
@end lilypond
@item
Dominant ninth
@tab
-Dominant seventh, major ninth
+Dominant seventh, @*major ninth
@tab
@code{9}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:9
-}
+@code{c1:9}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:9 }
+ \chordmode { c1:9 }
+>>
@end lilypond
@item
Major ninth
@tab
-Major seventh, major ninth
+Major seventh, @*major ninth
@tab
@code{maj9}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj9
-}
+@code{c1:maj9}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj9 }
+ \chordmode { c1:maj9 }
+>>
@end lilypond
@item
Minor ninth
@tab
-Minor seventh, major ninth
+Minor seventh, @*major ninth
@tab
@code{m9}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m9
-}
+@code{c1:m9}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m9 }
+ \chordmode { c1:m9 }
+>>
@end lilypond
@item
Dominant eleventh
@tab
-Dominant ninth, perfect eleventh
+Dominant ninth, @*perfect eleventh
@tab
@code{11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:11
-}
+@code{c1:11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:11 }
+ \chordmode { c1:11 }
+>>
@end lilypond
@item
Major eleventh
@tab
-Major ninth, perfect eleventh
+Major ninth, @*perfect eleventh
@tab
@code{maj11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj11
-}
+@code{c1:maj11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj11 }
+ \chordmode { c1:maj11 }
+>>
@end lilypond
@item
Minor eleventh
@tab
-Minor ninth, perfect eleventh
+Minor ninth, @*perfect eleventh
@tab
@code{m11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m11
-}
+@code{c1:m11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m11 }
+ \chordmode { c1:m11 }
+>>
@end lilypond
@item
Dominant thirteenth
@tab
-Dominant ninth, major thirteenth
+Dominant ninth, @*major thirteenth
@tab
@code{13}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:13
-}
+@code{c1:13}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:13 }
+ \chordmode { c1:13 }
+>>
@end lilypond
@item
Dominant thirteenth
@tab
-Dominant eleventh, major thirteenth
+Dominant eleventh, @*major thirteenth
@tab
@code{13.11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:13.11
-}
+@code{c1:13.11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords{ c1:13.11 }
+ \chordmode { c1:13.11 }
+>>
@end lilypond
@item
Major thirteenth
@tab
-Major eleventh, major thirteenth
+Major eleventh, @*major thirteenth
@tab
@code{maj13.11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:maj13.11
-}
+@code{c1:maj13.11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:maj13.11 }
+ \chordmode { c1:maj13.11 }
+>>
@end lilypond
@item
Minor thirteenth
@tab
-Minor eleventh, major thirteenth
+Minor eleventh, @*major thirteenth
@tab
@code{m13.11}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:m13.11
-}
+@code{c1:m13.11}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:m13.11 }
+ \chordmode { c1:m13.11 }
+>>
@end lilypond
@item
Suspended second
@tab
-Major second, perfect fifth
+Major second, @*perfect fifth
@tab
@code{sus2}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:sus2
-}
+@code{c1:sus2}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:sus2 }
+ \chordmode { c1:sus2 }
+>>
@end lilypond
@item
Suspended fourth
@tab
-Perfect fourth, perfect fifth
+Perfect fourth, @*perfect fifth
@tab
@code{sus4}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- c1:sus4
-}
+@code{c1:sus4}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+<<
+ \chords { c1:sus4 }
+ \chordmode { c1:sus4 }
+>>
@end lilypond
@item
-Power chord (two-voiced)
+Power chord @*(two-voiced)
@tab
Perfect fifth
@tab
@code{1.5}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- \powerChords
- c1:1.5
-}
+@code{\powerChords c1:1.5}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+\chordmode { \powerChords c1:1.5 }
@end lilypond
@item
-Power chord (three-voiced)
+Power chord @*@w{(three-voiced)}
@tab
-Perfect fifth, octave
+Perfect fifth, @*octave
@tab
@code{1.5.8}
@tab
-@lilypond[line-width=2.8\cm,noragged-right, notime]
-\chordmode {
- \powerChords
- c1:1.5.8
-}
+@code{\powerChords c1:1.5.8}
+@tab
+@lilypond[line-width=2.1\cm,noragged-right,notime]
+ \chordmode { \powerChords c1:1.5.8 }
@end lilypond
@end multitable
@node Predefined fretboard diagrams
@appendixsec Predefined fretboard diagrams
-The chart below shows the predefined fretboard diagrams for guitar.
+@menu
+* Diagrams for Guitar::
+* Diagrams for Ukulele::
+* Diagrams for Mandolin::
+@end menu
+
+@node Diagrams for Guitar
+@unnumberedsubsec Diagrams for Guitar
@lilypondfile[line-width=15.5\cm]{display-predefined-fretboards.ly}
-The chart below shows the predefined fretboard diagrams for ukulele.
+@node Diagrams for Ukulele
+@unnumberedsubsec Diagrams for Ukulele
@lilypondfile[line-width=15.5\cm]{display-predefined-ukulele-fretboards.ly}
-The chart below shows the predefined fretboard diagrams for mandolin.
+@node Diagrams for Mandolin
+@unnumberedsubsec Diagrams for Mandolin
@lilypondfile[line-width=15.5\cm]{display-predefined-mandolin-fretboards.ly}
Ghost notes for drums and percussion may be created using the
@code{\parenthesize} command detailed in @ref{Parentheses}.
-However, the default @code{\drummode} does not include the
-@code{Parenthesis_engraver} plugin which allows this.
@lilypond[quote,ragged-right,verbatim]
-\new DrumStaff \with {
- \consists "Parenthesis_engraver"
-}
+\new DrumStaff
<<
\context DrumVoice = "1" { s1 }
\context DrumVoice = "2" { s1 }
<<
{
hh8[ hh] <hh sn> hh16
- < \parenthesize sn > hh
- < \parenthesize sn > hh8 <hh sn> hh
+ \parenthesize sn hh
+ \parenthesize sn hh8 <hh sn> hh
} \\
{
bd4 r4 bd8 bd r8 bd
>>
@end lilypond
-@noindent
-Also note that you must add chords (@code{< >} brackets)
-around each @code{\parenthesize} statement.
-
@seealso
Snippets:
@rlsr{Percussion}.
The @code{measureLength} property is described in @ref{Time
administration}.
-@funindex \inStaffSegno
-
-The @code{\inStaffSegno} command can be used to place the segno
-symbol in cooperation with the @code{\repeat volta} command.
-Alternative bar line symbols can be set in a Score context by
-overriding the properties @code{segnoType},
-@code{startRepeatSegnoType}, @code{endRepeatSegnoType} or
-@code{doubleRepeatSegnoType} as required.
-
-@lilypond[verbatim,quote,relative=1]
-e1
-\repeat volta 2 {
- \inStaffSegno
- f2 g a b
-}
-c1_"D.S." \bar "|."
-@end lilypond
-
@cindex repeats, with ties
@cindex alternative endings, with ties
@cindex ties, in repeats
}
@end lilypond
+@funindex \inStaffSegno
+@cindex repeats, with segno
+@cindex segno, with repeats
+
+The @code{\inStaffSegno} command can be used to generate a composite
+bar line incorporating the segno symbol with the appropriate repeat
+bar line when used with the @code{\repeat volta} command. The
+correct type of repeat bar line, viz. start repeat, end repeat or
+double repeat, is selected automatically. Note that the
+corresponding @qq{D.S.} mark must be added manually.
+
+Away from a repeat:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\inStaffSegno
+f2 g a b
+c1_"D.S." \bar "|."
+@end lilypond
+
+At the start of a repeat:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ \inStaffSegno % start repeat
+ f2 g a b
+}
+c1_"D.S." \bar "|."
+@end lilypond
+
+At the end of a repeat:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ f2 g a b
+ \inStaffSegno % end repeat
+}
+f2 g a b
+c1_"D.S." \bar "|."
+@end lilypond
+
+Between two repeats:
+
+@lilypond[verbatim,quote,relative=1]
+e1
+\repeat volta 2 {
+ f2 g a b
+}
+\inStaffSegno % double repeat
+\repeat volta 2 {
+ f2 g a b
+}
+c1_"D.S." \bar "|."
+@end lilypond
+
+Alternative bar line symbols can be obtained by setting (in the Score
+context) the properties @code{segnoType}, @code{startRepeatSegnoType},
+@code{endRepeatSegnoType} or @code{doubleRepeatSegnoType} to the
+required bar line type. The alternative bar line types must be
+selected from the pre-defined types or types previously defined
+with the @code{\defineBarLine} command (see @ref{Bar lines}).
+
+@lilypond[verbatim,quote,relative=1]
+\defineBarLine ":|.S[" #'(":|." "S[" "")
+\defineBarLine "]" #'("]" "" "")
+e1
+\repeat volta 2 {
+ f2 g a b
+ \once \set Score.endRepeatSegnoType = ":|.S["
+ \inStaffSegno
+}
+f2 g \bar "]" a b
+c1_"D.S." \bar "|."
+@end lilypond
+
@snippets
@lilypondfile[verbatim,quote,texidoc,doctitle]
{shortening-volta-brackets.ly}
c1
@end lilypond
-Additionally there is an @code{\inStaffSegno} command which
-creates a segno bar, placed in cooperation
-with the @code{\repeat volta} command.
+Additionally there is an @code{\inStaffSegno} command which creates
+a segno bar line in conjunction with an appropriate repeat bar line
+when used with a @code{\repeat volta} command, see
+@ref{Normal repeats}.
@funindex \defineBarLine
@funindex defineBarLine
@item ragged-bottom
@funindex ragged-bottom
-If set to true, systems will not spread vertically down the page.
-This does not affect the last page. This should be set to true
-for pieces that have only two or three systems per page, for
-example orchestral scores.
+If this is set to true,
+systems will be set at their natural spacing, neither compressed
+nor stretched vertically to fit the page.
@item ragged-last-bottom
@funindex ragged-last-bottom
-If set to false, systems will spread vertically down the last
-page. Pieces that amply fill two pages or more should have this
-set to false. It also affects the last page of book parts, i.e.
-parts of a book created with @code{\bookpart} blocks.
+If this is set to false, then the last page,
+and the last page in each section created with a @code{\bookpart} block,
+will be vertically justified in the same way as the earlier pages.
@end table
inserted at top-level, between scores and top-level markups.
There are also analogous settings to @code{ragged-right} and
-@code{ragged-last} which have the same effect on vertical spacing:
-@code{ragged-bottom} and @code{ragged-last-bottom}. If set to
-@code{#t} the systems on all pages or just the last page
-respectively will not be justified vertically. See
+@code{ragged-last} which have the same effect on vertical spacing.
+If @code{ragged-bottom} is set to @code{#t} the systems will not
+be justified vertically. When @code{ragged-last-bottom} is set
+to @code{#t}, as it is by default, empty space is allowed at the
+bottom of the final page (or the final page in each
+@code{\bookpart}). See
@ref{Fixed vertical spacing paper variables,,Fixed vertical spacing @code{@bs{}paper} variables}.
Page breaks are computed by the @code{page-breaking} function. LilyPond
The name of the instrument playing the cue can be printed by setting
the @code{instrumentCueName} property in a temporary @code{CueVoice}
context. The placement and style of the @code{instrumentCueName} is
-controlled by the @code{\instrumentSwitch} object, see
+controlled by the @code{InstrumentSwitch} object, see
@ref{Instrument names}. If the cue notes require a change in clef,
this can be done manually but the original clef should also be
restored manually at the end of the cue notes.
<form action="http://google.com/search"
method="get"
name="search"
- onSubmit="search.q.value='site:lilypond.org/doc/v2.17 '
+ onSubmit="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onMouseMove="search.q.value='site:lilypond.org/doc/v2.17 '
+ onMouseMove="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onKeyUp="search.q.value='site:lilypond.org/doc/v2.17 '
+ onKeyUp="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value">
<input type="hidden" name="btnG" value="Google Search">
<input type="text" name="brute_query" onfocus="this.value=''" value="Search">
%
% This file is in the public domain.
%% Note: this file works from version 2.17.6
-%% DO NOT EDIT this file manually; it is automatically
-%% generated from LSR http://lsr.dsi.unimi.it
-%% Make any changes in LSR itself, or in Documentation/snippets/new/ ,
-%% and then run scripts/auxiliar/makelsr.py
-%%
-%% This file is in the public domain.
\version "2.17.6"
\header {
} % begin verbatim
+
bass = {
\clef bass
g4 b, c d
e d8 c d2
-} % begin verbatim
-
+}
continuo = \figuremode {
<_>4 <6>4 <5/>4
\override Staff.BassFigureAlignmentPositioning.direction = #UP
-%% DO NOT EDIT this file manually; it is automatically
-%% generated from LSR http://lsr.dsi.unimi.it
-%% Make any changes in LSR itself, or in Documentation/snippets/new/ ,
-%% and then run scripts/auxiliar/makelsr.py
-%%
-%% This file is in the public domain.
-\version "2.17.6"
+% DO NOT EDIT this file manually; it is automatically
+% generated from Documentation/snippets/new
+% Make any changes in Documentation/snippets/new/
+% and then run scripts/auxiliar/makelsr.py
+%
+% This file is in the public domain.
+%% Note: this file works from version 2.17.97
+\version "2.17.97"
\header {
lsrtags = "editorial-annotations, expressive-marks, tweaks-and-overrides"
accidental, requires several overrides. The
@code{outside-staff-priority} property must be set to @code{#f}, as
otherwise this would take precedence over the @code{avoid-slur
-property}. The value of @code{halign} is used to position the turn
-horizontally.
-
+property}. Changing the fractions @code{2/3} and @code{1/3} adjusts the
+horizontal position.
"
doctitle = "Creating a delayed turn"
} % begin verbatim
+
\relative c'' {
- \once \override TextScript.avoid-slur = #'inside
- \once \override TextScript.outside-staff-priority = ##f
- c2(^\markup \tiny \override #'(baseline-skip . 1) {
- \halign #-4
- \center-column {
- \sharp
- \musicglyph #"scripts.turn"
+ c2*2/3 ( s2*1/3\turn d4) r
+ <<
+ { c4.( d8) }
+ { s4 s\turn }
+ >>
+ \transpose c d \relative c'' <<
+ { c4.( d8) }
+ {
+ s4
+ \once \set suggestAccidentals = ##t
+ \once \override AccidentalSuggestion #'outside-staff-priority = ##f
+ \once \override AccidentalSuggestion #'avoid-slur = #'inside
+ \once \override AccidentalSuggestion #'font-size = #-3
+ \once \override AccidentalSuggestion #'script-priority = #-1
+ \single \hideNotes
+ b8-\turn \noBeam
+ s8
}
- }
- d4.) c8
+ >>
}
embedding-native-postscript-in-a--markup-block.ly
grid-lines--changing-their-appearance.ly
grid-lines--emphasizing-rhythms-and-notes-synchronization.ly
+hammer-on-and-pull-off-using-chords.ly
+hammer-on-and-pull-off-using-voices.ly
+hammer-on-and-pull-off.ly
how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-1.ly
how-to-print-two-rehearsal-marks-above-and-below-the-same-barline-method-2.ly
making-some-staff-lines-thicker-than-the-others.ly
fretted-string-harmonics-in-tablature.ly
guitar-slides.ly
guitar-strum-rhythms.ly
+hammer-on-and-pull-off-using-chords.ly
+hammer-on-and-pull-off-using-voices.ly
+hammer-on-and-pull-off.ly
how-to-change-fret-diagram-position.ly
jazz-combo-template.ly
laissez-vibrer-ties.ly
--- /dev/null
+% DO NOT EDIT this file manually; it is automatically
+% generated from Documentation/snippets/new
+% Make any changes in Documentation/snippets/new/
+% and then run scripts/auxiliar/makelsr.py
+%
+% This file is in the public domain.
+%% Note: this file works from version 2.16.0
+\version "2.16.0"
+
+\header {
+ lsrtags = "editorial-annotations, fretted-strings"
+
+ texidoc = "
+When using hammer-on or pull-off with chorded notes, only a single arc
+is drawn. However @q{double arcs} are possible by setting the
+@code{doubleSlurs} property to @code{#t}.
+
+"
+ doctitle = "Hammer on and pull off using chords"
+} % begin verbatim
+
+
+\new TabStaff {
+ \relative c' {
+ % chord hammer-on and pull-off
+ \set doubleSlurs = ##t
+ <g' b>8( <a c> <g b>)
+ }
+}
--- /dev/null
+% DO NOT EDIT this file manually; it is automatically
+% generated from Documentation/snippets/new
+% Make any changes in Documentation/snippets/new/
+% and then run scripts/auxiliar/makelsr.py
+%
+% This file is in the public domain.
+%% Note: this file works from version 2.16.0
+\version "2.16.0"
+
+\header {
+ lsrtags = "editorial-annotations, fretted-strings"
+
+ texidoc = "
+The arc of hammer-on and pull-off is upwards in voices one and three and
+downwards in voices two and four:
+
+"
+ doctitle = "Hammer on and pull off using voices"
+} % begin verbatim
+
+
+\new TabStaff {
+ \relative c' {
+ << { \voiceOne g2( a) }
+ \\ { \voiceTwo a,( b) }
+ >> \oneVoice
+ }
+}
--- /dev/null
+% DO NOT EDIT this file manually; it is automatically
+% generated from Documentation/snippets/new
+% Make any changes in Documentation/snippets/new/
+% and then run scripts/auxiliar/makelsr.py
+%
+% This file is in the public domain.
+%% Note: this file works from version 2.16.0
+\version "2.16.0"
+
+\header {
+ lsrtags = "editorial-annotations, fretted-strings"
+
+ texidoc = "
+Hammer-on and pull-off can be obtained using slurs.
+
+"
+ doctitle = "Hammer on and pull off"
+} % begin verbatim
+
+
+\new TabStaff {
+ \relative c' {
+ d4( e\2)
+ a( g)
+ }
+}
%
% This file is in the public domain.
%% Note: this file works from version 2.17.6
-%% DO NOT EDIT this file manually; it is automatically
-%% generated from LSR http://lsr.dsi.unimi.it
-%% Make any changes in LSR itself, or in Documentation/snippets/new/ ,
-%% and then run scripts/auxiliar/makelsr.py
-%%
-%% This file is in the public domain.
\version "2.17.6"
\header {
to set @code{DynamicText #'X-offset}, which will apply to all dynamic
texts! Also, it is aligned at the right edge of the additional text,
not at the center of pp.
-
-
-
-
"
doctitle = "Horizontally aligning custom dynamics (e.g. \"sempre pp\" \"piu f\" \"subito p\")"
} % begin verbatim
-\header { title = "Horizontally aligning custom dynamics" } % begin verbatim
-
+\header { title = "Horizontally aligning custom dynamics" }
\paper { ragged-right = ##f }
-%% DO NOT EDIT this file manually; it is automatically
-%% generated from LSR http://lsr.dsi.unimi.it
-%% Make any changes in LSR itself, or in Documentation/snippets/new/ ,
-%% and then run scripts/auxiliar/makelsr.py
-%%
-%% This file is in the public domain.
\version "2.17.6"
\header {
"
doctitle = "Adding a figured bass above or below the notes"
-} % begin verbatim
+}
bass = {
--- /dev/null
+\version "2.17.97"
+
+\header {
+ lsrtags = "editorial-annotations, expressive-marks, tweaks-and-overrides"
+
+ texidoc = "
+Creating a delayed turn, where the lower note of the turn uses the
+accidental, requires several overrides. The
+@code{outside-staff-priority} property must be set to @code{#f}, as
+otherwise this would take precedence over the @code{avoid-slur
+property}. Changing the fractions @code{2/3} and @code{1/3} adjusts the
+horizontal position.
+"
+ doctitle = "Creating a delayed turn"
+}
+
+
+\relative c'' {
+ c2*2/3 ( s2*1/3\turn d4) r
+ <<
+ { c4.( d8) }
+ { s4 s\turn }
+ >>
+ \transpose c d \relative c'' <<
+ { c4.( d8) }
+ {
+ s4
+ \once \set suggestAccidentals = ##t
+ \once \override AccidentalSuggestion #'outside-staff-priority = ##f
+ \once \override AccidentalSuggestion #'avoid-slur = #'inside
+ \once \override AccidentalSuggestion #'font-size = #-3
+ \once \override AccidentalSuggestion #'script-priority = #-1
+ \single \hideNotes
+ b8-\turn \noBeam
+ s8
+ }
+ >>
+}
--- /dev/null
+\version "2.16.0"
+
+\header {
+ lsrtags = "editorial-annotations, fretted-strings"
+
+ texidoc = "
+When using hammer-on or pull-off with chorded notes, only a single arc
+is drawn. However @q{double arcs} are possible by setting the
+@code{doubleSlurs} property to @code{#t}.
+
+"
+ doctitle = "Hammer on and pull off using chords"
+}
+
+\new TabStaff {
+ \relative c' {
+ % chord hammer-on and pull-off
+ \set doubleSlurs = ##t
+ <g' b>8( <a c> <g b>)
+ }
+}
--- /dev/null
+\version "2.16.0"
+
+\header {
+ lsrtags = "editorial-annotations, fretted-strings"
+
+ texidoc = "
+The arc of hammer-on and pull-off is upwards in voices one and three and
+downwards in voices two and four:
+
+"
+ doctitle = "Hammer on and pull off using voices"
+}
+
+\new TabStaff {
+ \relative c' {
+ << { \voiceOne g2( a) }
+ \\ { \voiceTwo a,( b) }
+ >> \oneVoice
+ }
+}
--- /dev/null
+\version "2.16.0"
+
+\header {
+ lsrtags = "editorial-annotations, fretted-strings"
+
+ texidoc = "
+Hammer-on and pull-off can be obtained using slurs.
+
+"
+ doctitle = "Hammer on and pull off"
+}
+
+\new TabStaff {
+ \relative c' {
+ d4( e\2)
+ a( g)
+ }
+}
-%% DO NOT EDIT this file manually; it is automatically
-%% generated from LSR http://lsr.dsi.unimi.it
-%% Make any changes in LSR itself, or in Documentation/snippets/new/ ,
-%% and then run scripts/auxiliar/makelsr.py
-%%
-%% This file is in the public domain.
\version "2.17.6"
\header {
to set @code{DynamicText #'X-offset}, which will apply to all dynamic
texts! Also, it is aligned at the right edge of the additional text,
not at the center of pp.
-
-
-
-
"
doctitle = "Horizontally aligning custom dynamics (e.g. \"sempre pp\" \"piu f\" \"subito p\")"
-} % begin verbatim
-
+}
\header { title = "Horizontally aligning custom dynamics" }
filetype off
set runtimepath+=/usr/local/share/lilypond/current/vim/
filetype on
+syntax on
@end example
@noindent
@menu
* Many quotes from a large score::
-* Inserting LilyPond output into OpenOffice.org::
+* Inserting LilyPond output into OpenOffice and LibreOffice::
* Inserting LilyPond output into other programs::
@end menu
the clip systems feature, see @ruser{Extracting fragments of music}.
-@node Inserting LilyPond output into OpenOffice.org
-@unnumberedsubsec Inserting LilyPond output into OpenOffice.org
+@node Inserting LilyPond output into OpenOffice and LibreOffice
+@unnumberedsubsec Inserting LilyPond output into OpenOffice and LibreOffice
@cindex OpenOffice.org
+@cindex LibreOffice.org
-LilyPond notation can be added to OpenOffice.org with
+LilyPond notation can be added to OpenOffice.org and LibreOffice with
@uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
@tab Don't use directories from input files while constructing output
file names.
+@item @code{strokeadjust}
+@tab @code{#f}
+@tab Force PostScript stroke adjustment. This option is mostly
+relevant when @code{PDF} is generated from PostScript output
+(stroke adjustment is usually enabled automatically for
+low-resolution bitmap devices). Without this option,
+@code{PDF}@tie{}previewers tend to produce widely inconsistent
+stem widths at resolutions typical for screen display. The option
+does not noticeably affect print quality and causes large file
+size increases in @code{PDF} files.
+
@item @code{svg-woff}
@tab @code{#f}
@tab Use woff font files in SVG backend.
@divClass{column-center-top}
@subheading Generic Packages or Distribution-Specific Packages?
-Many distributions include LilyPond in their normal package
-system. These versions are easier to install and uninstall than
-the generic packages, but they may be older. If you wish to use
-our generic packages, please uninstall the official version from
-your system using the normal package manager for your distribution.
-See your distribution's documentation about how to use their
-package manager.
+Many distributions already include LilyPond within their normal
+package repositories and these are often much easier to install than the
+generic packages found here. However the version of LilyPond in those
+repositories may be @emph{significantly} older than the current stable
+version. If you wish to use our generic packages, please check that
+your LilyPond editor is using the correct version of lilypond. See
+@ref{Easier editing}.
@divEnd
@subsubheading Mix music and text
Put fragments of music into texts without cutting and pasting
-pictures. Integrate music into @LaTeX{} or HTML seamlessly, or add
-music to OpenOffice.org with OOoLilyPond. Plugins are also available
-to allow LilyPond code in various blogs and wikis, making online
-collaboration possible.
+pictures. Integrate music into @LaTeX{} and HTML seamlessly, or add
+music to OpenOffice.org or LibreOffice with OOoLilyPond. Plugins are
+also available to allow LilyPond code in various blogs and wikis, making
+online collaboration possible.
@subsubheading Accessibility
@divClass{keep-bullets}
@itemize
+@item
+@uref{http://www.aurelienbello.com/,Aurélien Bello} has re-orchestrated
+@emph{Der Ring des Nibelungen} by Richard Wagner to a
+@uref{http://www.rsb-online.de/content/konzerte/wagnerzyklus-10-13/wagner-fuer-kinder/index_ger.html,100-minute version for children}.
+It has been written for a standard symphony orchestra but with a reduced
+cast of singers, and will be performed by the
+@emph{Radio-Sinfonieorchester Berlin} on the 5th and 6th April 2014 in
+the Atze Musiktheater, Berlin. The Conductor is Heiko Matthias Förster.
+
+@item
+Joe Smeets created sheet music for the children's book @emph{Zing Mee}
+(@emph{Sing along}) by Annie M.G. published by Querido -- ISBN
+9789045106205:
+@uref{http://www.queridokinderenjeugdboeken.nl/web/Boek.htm?dbid=18954&typeofpage=134707, www.queridokinderenjeugdboeken.nl}; choir
+rehearsal scores for the Dutch translation of Benjamin Britten's
+@emph{Saint Nicolas} performed by @emph{Muziektheater Hollands Diep} in
+2011.
+@uref{http://www.muziektheaterhollandsdiep.nl/nl/voorstellingen/sint_nicolaas_leeft, www.muziektheaterhollandsdiep.nl}; and is currently
+working on the score and parts for an arrangement of Moussurgsky's
+@emph{Boris Godounov} for wind quartet, piano and percussion. To be
+performed in 2014, again by @emph{Muziektheater Hollands Diep}.
+
@item
A critical edition of Tommaso Traetta's @emph{Enea nel Lazio (1760)},
opera series with libretto by Vittorio Amedeo Cigna-Santi, in four
More in-depth information is available in @ref{Manuals}.
+Ben Lemon, a LilyPond user, has created a range of
+@uref{http://benlemon.me/blog/music/lilypond/operation-lilypond/,video tutorials}
+on his blog and which are aimed at new users.
+
@subsubheading Easier editing environments
@uref{http://www.tunefl.com}
With tunefl you can typeset your scores directly online
-without needing to install lilypond locally. It allows
+without needing to install LilyPond locally. It allows
trying out all the program's features using a convenient
web interface.
@item
@uref{http://lilycomp.sourceforge.net, LilyComp} is a graphical
note entry program, acting much like a number-pad which produces
-lilypond notes.
+LilyPond notes.
@end itemize
@uref{http://lsr@/.dsi@/.unimi@/.it,LilyPond Snippet Repository}:
user-created examples, hints and tips.
+@item
+@uref{http://benlemon.me/blog/music/lilypond/operation-lilypond/,Video Tutorials}:
+Ben Lemon, a LilyPond user, has created a range of video tutorials on
+his blog and which are aimed at new users.
+
@item
@ref{Development}:
manuals for the unstable version.
@divClass{keep-bullets}
@itemize
+@item @uref{http://lilypond.org/doc/v2.16/Documentation/web/manuals,
+LilyPond 2.16 Documentation}
+
@item @uref{http://lilypond.org/doc/v2.14/Documentation/web/manuals,
LilyPond 2.14 Documentation}
@c used for news about the upcoming release; see CG 10.2
+@newsItem
+@subsubheading Lilypond 2.18.2 released! @emph{March 23, 2014}
+
+We are proud to announce the release of GNU LilyPond 2.18.2.
+LilyPond is a music engraving program devoted to producing the
+highest-quality sheet music possible. It brings the aesthetics of
+traditionally engraved music to computer printouts.
+
+This version provides a number of updates to 2.18.0, including
+updated manuals. We recommend all users to upgrade to this version.
+
+@newsEnd
+
+
+@newsItem
+@subsubheading LilyPond production named BEST EDITION 2014 @emph{March 11, 2014}
+
+We are thrilled to announce that the new edition of the songs of Oskar
+Fried (1871-1941), published recently by our fellow contributors Urs Liska
+and Janek Warchoł [1], will receive the "Musikeditionspreis BEST EDITION
+2014" of the German Music Publishers' Association [2]! The ceremony will
+take place in a few days at the Frankfurt Musikmesse [3].
+
+We congratulate Janek and Urs for gaining such public recognition of
+typographical and editorial excellence of their work. We are also delighted
+to inform you that they intend to make their work available under a Free
+license as soon as the publisher expenses are covered. Please support this
+initiative by buying the printed volume through the publisher [4] or by
+pledging a contribution at the Indiegogo campaign [5]!
+
+[1] @uref{http://lilypondblog.org/category/fried-songs}@*
+[2] @uref{http://www.best-edition.de}@*
+[3] @uref{https://musik.messefrankfurt.com/frankfurt/en/besucher/events/awards/best_edition.html}@*
+[4] @uref{http://www.sound-rel.de}@*
+[5] @uref{http://igg.me/at/free-fried}
+
+@newsEnd
+
+
+@newsItem
+@subsubheading LilyPond 2.19.3 released @emph{March 2, 2014}
+
+We are happy to announce the release of LilyPond 2.19.3. This
+release includes a number of enhancements, and contains
+some work in progress. You will have access to the very latest features, but
+some may be incomplete, and you may encounter bugs and crashes. If you require
+a stable version of Lilypond, we recommend using the 2.18 version.
+
+@newsEnd
+
@newsItem
@subsubheading Lilypond 2.18.0 released! @emph{December 29, 2013}
* don't duplicate entries from news-front.itexi
@end ignore
+@newsItem
+@subsubheading LilyPond 2.18.1 @emph{February 16, 2014}
+
+We have released updated manuals for LilyPond's stable version, 2.18.
+The manuals are now for 2.18.1 and have a number of updates and improvements
+over 2.18.0. There will be a further release of 2.18 in the future (2.18.2),
+and this will include the updates to the manuals as well as some minor
+enhancements to the LilyPond core functionality.
+
+To summarise the current situation: stable LilyPond application: 2.18.0;
+stable LilyPond manuals: 2.18.1; development for both: 2.19.2.
+
+@newsEnd
+
+@newsItem
+@subsubheading LilyPond 2.19.2 released @emph{February 2, 2014}
+
+We are happy to announce the release of LilyPond 2.19.2. This
+release includes a number of enhancements, and contains
+some work in progress. You will have access to the very latest features, but
+some may be incomplete, and you may encounter bugs and crashes. If you require
+a stable version of Lilypond, we recommend using the 2.18 version.
+
+@newsEnd
+
+@newsItem
+@subsubheading LilyPond 2.19.1 released @emph{January 19, 2014}
+
+We are happy to announce the release of LilyPond 2.19.1. This
+release includes a number of enhancements, and contains
+some work in progress. You will have access to the very latest features, but
+some may be incomplete, and you may encounter bugs and crashes. If you require
+a stable version of Lilypond, we recommend using the 2.18 version.
+
+@newsEnd
+
+@newsItem
+@subsubheading LilyPond 2.19.0 released @emph{January 5, 2014}
+
+We are happy to announce the release of LilyPond 2.19.0. This
+release includes a number of enhancements, and contains
+some work in progress. You will have access to the very latest features, but
+some may be incomplete, and you may encounter bugs and crashes. If you require
+a stable version of Lilypond, we recommend using the 2.18 version.
+
+@newsEnd
+
@newsItem
@subsubheading LilyPond 2.17.97 released! @emph{December 8, 2013}
<tweet>
Server Acim, composer and professor of Composition and Conducting
in İnönü University - Malatya, Turkey, wrote the
- Turkish Ebook <a href="http://yadi.sk/d/fNmncSQ3DR3Ck">
+ Turkish Ebook <a href="http://acim.name.tr/lilypond/my_EBook_Promotion/index.php">
"GNU/LilyPond, Özgür Bir Nota Yazma Programı"</a>.
</tweet>
+ <tweet>
+ Aurélien Bello, has re-orchestrated a 100-minute version of "Der
+ Ring des Nibelungen" for children, being performed in Berlin on the
+ 5th and 6th of April 2014. Click
+ <a href="http://www.rsb-online.de/content/konzerte/wagnerzyklus-10-13/wagner-fuer-kinder/index_ger.html">
+ here </a> for more details.
+ </tweet>
</tweets>
+@book{acim13,
+ title = {GNU/LilyPond (Turkish Language)},
+ author = {Server Acim},
+ year = 2013,
+ note = {(@uref{http://library.inonu.edu.tr/dosya/files/gnulilypond-serveracim.pdf, PDF 2100k})}
+}
@inproceedings{hanwen06,
title = {LilyPond, Automated music formatting and the Art of Shipping},
<form action="http://google.com/search"
method="get"
name="search"
- onSubmit="search.q.value='site:lilypond.org/doc/v2.17 '
+ onSubmit="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onMouseMove="search.q.value='site:lilypond.org/doc/v2.17 '
+ onMouseMove="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value"
- onKeyUp="search.q.value='site:lilypond.org/doc/v2.17 '
+ onKeyUp="search.q.value='site:lilypond.org/doc/v2.18 '
+ search.brute_query.value">
<input type="hidden" name="btnG" value="Google 搜索">
<input type="text" name="brute_query" onfocus="this.value=''" value="搜索">
New features in 2.18 since 2.16
*******************************
+ * The PostScript functionality of stroke adjustment is no longer
+ applied automatically but left to the discretion of the PostScript
+ device (by default, Ghostscript uses it for resolutions up to
+ 150dpi when generating raster images). When it is enabled, a more
+ complex drawing algorithm designed to benefit from stroke
+ adjustment is employed mostly for stems and bar lines.
+
+ Stroke adjustment can be forced by specifying the command line
+ option `-dstrokeadjust' to LilyPond. When generating `PDF' files,
+ this will usually result in markedly better looking `PDF' previews
+ but significantly larger file size. Print quality at high
+ resolutions will be unaffected.
+
* There is now a new context type called `NullVoice' which, while not
appearing in the printed output, can be used to align lyrics.
This can be particularly convenient when used in parallel with a
PACKAGE_NAME=LilyPond
MAJOR_VERSION=2
MINOR_VERSION=18
-PATCH_LEVEL=0
+PATCH_LEVEL=2
MY_PATCH_LEVEL=
-VERSION_STABLE=2.18.0
-VERSION_DEVEL=2.17.97
+VERSION_STABLE=2.18.2
+VERSION_DEVEL=2.19.3
--- /dev/null
+\version "2.18.1"
+\header {
+ texidoc="
+Header blocks may appear before and after the actual music in a score.
+"
+}
+
+\markup \vspace #3
+\markup { \bold Note: expect piece and opus. }
+\markup \vspace #3
+
+\score {
+ \header {
+ piece = "Piece correct (set in score)"
+ opus = "Opus incorrect (to be superseded at score level)"
+ }
+ \new Staff { c'1 }
+ \header {
+ % This should NOT overwrite the piece from above!
+ opus = "Opus correct (superseded at score level)"
+ }
+}
--- /dev/null
+\version "2.18.0"
+
+\header {
+ texidoc="
+ The segno sign should be automatically combined with the
+ appropriate repeat bar line when @code{\inStaffSegno} is
+ used.
+"
+}
+
+\relative c' {
+ c1
+ \inStaffSegno
+ c2^"no repeat" c c c
+ \repeat volta 2 {
+ \inStaffSegno % start repeat
+ c2^"start repeat" c c c
+ }
+ \break
+ c1
+ \repeat volta 2 {
+ c2 c c c^"end repeat"
+ \inStaffSegno % end repeat
+ }
+ c2 c c c
+ \repeat volta 2 {
+ c2 c c c
+ }
+ \inStaffSegno % double repeat
+ \repeat volta 2 {
+ c2^"double repeat" c c c
+ }
+}
LY_DEFINE (ly_context_def_lookup, "ly:context-def-lookup",
2, 1, 0, (SCM def, SCM sym, SCM val),
- "Return the value of @var{sym} in output definition @var{def}"
- " (e.g., @code{\\paper}). If no value is found, return"
- " @var{val} or @code{'()} if @var{val} is undefined.")
+ "Return the value of @var{sym} in context definition @var{def}"
+ " (e.g., @code{\\Voice}). If no value is found, return"
+ " @var{val} or @code{'()} if @var{val} is undefined."
+ " @var{sym} can be any of @samp{default-child}, @samp{consists},"
+ " @samp{description}, @samp{aliases}, @samp{accepts},"
+ " @samp{property-ops}, @samp{context-name}, @samp{group-type}.")
{
LY_ASSERT_SMOB (Context_def, def, 1);
Context_def *cd = unsmob_context_def (def);
}
else
{
- if (Note_column::has_interface (b)
+ if (d == RIGHT // end at the left edge of a rest
+ && Note_column::has_interface (b)
&& Note_column::has_rests (b))
x_points[d] = e[-d];
else
SCM start_module_;
int hidden_state_;
Input override_input_;
- SCM eval_scm (SCM, char extra_token = 0);
+ SCM eval_scm (SCM, Input, char extra_token = 0);
public:
- SCM eval_scm_token (SCM sval) { return eval_scm (sval, '#'); }
+ SCM eval_scm_token (SCM sval, Input w)
+ {
+ w.step_forward ();
+ return eval_scm (sval, w, '#');
+ }
SCM extra_tokens_;
SCM *lexval_;
Input *lexloc_;
Moment music_start_mom () const;
Music_iterator ();
void report_event (Music *);
- Context *get_outlet () const;
- void set_context (Context *);
+ virtual Context *get_outlet () const;
+ virtual void set_context (Context *);
static SCM get_static_get_iterator (Music *mus);
void init_context (Music *, Context *);
void quit ();
Music_wrapper_iterator ();
DECLARE_CLASSNAME (Music_wrapper_iterator);
+ virtual Context *get_outlet () const;
+ virtual void set_context (Context *trans);
virtual void derived_substitute (Context *f, Context *t);
virtual void derived_mark () const;
virtual void construct_children ();
extern bool parse_protect_global;
extern bool parsed_objects_should_be_dead;
-struct Parse_start
+class Parse_start
{
- char const *str;
- int nchars;
- Input start_location_;
- bool safe_;
- SCM (*func_) (Parse_start *ps);
+public:
SCM form_;
+ Input &location_;
+ bool safe_;
Lily_parser *parser_;
- Parse_start ()
+ Parse_start (SCM form, Input &location, bool safe, Lily_parser *parser) :
+ form_ (form), location_ (location), safe_ (safe), parser_ (parser)
{
- str = 0;
- nchars = 0;
- safe_ = false;
- parser_ = 0;
- form_ = SCM_UNDEFINED;
- func_ = 0;
}
};
SCM catch_protected_parse_body (void *);
SCM protected_ly_parse_scm (Parse_start *, bool);
-SCM ly_parse_scm (char const *, int *, Input, bool, Lily_parser *);
+SCM ly_parse_scm (Input&, bool, Lily_parser *);
SCM ly_eval_scm (SCM, Input, bool, Lily_parser *);
#endif /* PARSE_SCM_HH */
}
}
<incl>(\$|#) { // scm for the filename
- int n = 0;
Input hi = here_input();
hi.step_forward ();
- SCM sval = ly_parse_scm (hi.start (), &n, hi,
- be_safe_global && is_main_input_, parser_);
- sval = eval_scm (sval);
+ SCM sval = ly_parse_scm (hi, be_safe_global && is_main_input_, parser_);
+ sval = eval_scm (sval, hi);
+ int n = hi.end () - hi.start ();
for (int i = 0; i < n; i++)
{
return MULTI_MEASURE_REST;
}
<INITIAL,chords,figures,lyrics,markup,notes># { //embedded scm
- int n = 0;
Input hi = here_input();
hi.step_forward ();
- SCM sval = ly_parse_scm (hi.start (), &n, hi,
- be_safe_global && is_main_input_, parser_);
+ SCM sval = ly_parse_scm (hi, be_safe_global && is_main_input_, parser_);
if (sval == SCM_UNDEFINED)
error_level_ = 1;
+ int n = hi.end () - hi.start ();
for (int i = 0; i < n; i++)
{
yyinput ();
}
<INITIAL,chords,figures,lyrics,markup,notes>\$ { //immediate scm
- int n = 0;
Input hi = here_input();
hi.step_forward ();
- SCM sval = ly_parse_scm (hi.start (), &n, hi,
- be_safe_global && is_main_input_, parser_);
+ SCM sval = ly_parse_scm (hi, be_safe_global && is_main_input_, parser_);
+
+ int n = hi.end () - hi.start ();
for (int i = 0; i < n; i++)
{
}
char_count_stack_.back () += n;
- sval = eval_scm (sval, '$');
+ sval = eval_scm (sval, hi, '$');
int token = scan_scm_id (sval);
if (!scm_is_eq (yylval, SCM_UNSPECIFIED))
// this function is private.
SCM
-Lily_lexer::eval_scm (SCM readerdata, char extra_token)
+Lily_lexer::eval_scm (SCM readerdata, Input hi, char extra_token)
{
SCM sval = SCM_UNDEFINED;
if (!SCM_UNBNDP (readerdata))
{
- sval = ly_eval_scm (scm_car (readerdata),
- *unsmob_input (scm_cdr (readerdata)),
+ sval = ly_eval_scm (readerdata,
+ hi,
be_safe_global && is_main_input_,
parser_);
}
Careful with GC, although we intend the following as pointers
only, we _must_ mark them.
*/
- if (mus->get_outlet ())
- scm_gc_mark (mus->get_outlet ()->self_scm ());
+ /* Use handle_ directly as get_outlet is a virtual function and we
+ need to protect the context until Music_iterator::quit is being
+ run. */
+ if (mus->handle_.get_context ())
+ scm_gc_mark (mus->handle_.get_context ()->self_scm ());
if (mus->music_)
scm_gc_mark (mus->music_->self_scm ());
return Music_iterator::pending_moment ();
}
+Context *
+Music_wrapper_iterator::get_outlet () const
+{
+ if (child_iter_)
+ return child_iter_->get_outlet ();
+ return Music_iterator::get_outlet ();
+}
+
+void
+Music_wrapper_iterator::set_context (Context *trans)
+{
+ if (child_iter_)
+ child_iter_->set_context (trans);
+ Music_iterator::set_context (trans);
+}
+
IMPLEMENT_CTOR_CALLBACK (Music_wrapper_iterator);
bool
else
{
ret.push_back (orig[i]);
- ret.back ().force_ = 0;
}
}
return ret;
else
config = layout.solution (rag);
- last_page_force = layout.force ();
+ if ((ragged () && layout.force () < 0.0)
+ || isinf (layout.force ()))
+ warning (_f ("page %d has been compressed", page_num));
+ else
+ last_page_force = layout.force ();
systems_configs_fncounts = scm_cons (scm_cons (lines, config), systems_configs_fncounts);
footnote_count += fn_lines;
cur_page_height -= min_whitespace_at_top_of_page (cached_line_details_[page_starter]);
cur_page_height -= min_whitespace_at_bottom_of_page (cached_line_details_.back ());
- Real cur_height = cur_rod_height + ((ragged_last () || ragged ()) ? cur_spring_height : 0);
if (!too_few_lines (line_count - cached_line_details_.back ().compressed_nontitle_lines_count_)
- && cur_height > cur_page_height
+ && cur_rod_height > cur_page_height
/* don't increase the page count if the last page had only one system */
&& cur_rod_height > cached_line_details_.back ().full_height ())
ret++;
line_penalty += uncompressed_line_details_[i].break_penalty_;
}
- for (vsize i = 0; i < res.force_.size (); i++)
+ for (vsize i = ragged () ? res.force_.size () - 1 : 0;
+ i < res.force_.size () - ragged_last ();
+ i++)
{
Real f = res.force_[i];
page1_penalty[i] = line_count_penalty (page1_line_count);
page1_status[i] = line_count_status (page1_line_count);
- if (ragged2)
+ if (ragged1)
page2_force[page2_force.size () - 1 - i]
= (page2.force_ < 0 && i + 1 < page1_force.size ()) ? infinity_f : 0;
+ else if (ragged2 && page2.force_ > 0)
+ page2_force[page2_force.size () - 1 - i] = 0.0;
else
page2_force[page2_force.size () - 1 - i] = page2.force_;
page2_penalty[page2_penalty.size () - 1 - i] = line_count_penalty (page2_line_count);
Real overflow = spacer.configuration_length (spacer.force ())
- page_height_;
if (ragged && overflow < 1e-6)
- warning (_ ("cannot fit music on page: ragged-spacing was requested, but page was compressed"));
+ warning (_ ("ragged-bottom was specified, but page must be compressed"));
else
{
- warning (_f ("cannot fit music on page: overflow is %f",
+ warning (_f ("compressing over-full page by %.1f staff-spaces",
overflow));
- warning (_ ("compressing music to fit"));
+ force_ = -infinity_f;
vsize space_count = solution_.size ();
Real spacing_increment = overflow / (space_count - 2);
for (vsize i = 2; i < space_count; i++)
space.prepend_system (lines_[page_start]);
bool overfull = (space.rod_height_ > paper_height
- || (ragged
+ || (ragged_
&& (space.rod_height_ + space.spring_len_ > paper_height)));
// This 'if' statement is a little hard to parse. It won't consider this configuration
// if it is overfull unless the current configuration is the first one with this start
SCM
internal_ly_parse_scm (Parse_start *ps)
{
- Source_file *sf = ps->start_location_.get_source_file ();
+ Input &hi = ps->location_;
+ Source_file *sf = hi.get_source_file ();
SCM port = sf->get_port ();
- long off = ps->start_location_.start () - sf->c_str ();
+ long off = hi.start () - sf->c_str ();
scm_seek (port, scm_from_long (off), scm_from_long (SEEK_SET));
SCM from = scm_ftell (port);
- scm_set_port_line_x (port, scm_from_int (ps->start_location_.line_number () - 1));
- scm_set_port_column_x (port, scm_from_int (ps->start_location_.column_number () - 1));
+ scm_set_port_line_x (port, scm_from_int (hi.line_number () - 1));
+ scm_set_port_column_x (port, scm_from_int (hi.column_number () - 1));
bool multiple = ly_is_equal (scm_peek_char (port), SCM_MAKE_CHAR ('@'));
SCM form = scm_read (port);
SCM to = scm_ftell (port);
- ps->nchars = scm_to_int (to) - scm_to_int (from);
+ hi.set (hi.get_source_file (),
+ hi.start (),
+ hi.start () + scm_to_int (scm_difference (to, from)));
if (!SCM_EOF_OBJECT_P (form))
{
form = scm_list_3 (ly_symbol2scm ("apply"),
ly_symbol2scm ("values"),
form);
- return scm_cons (form, make_input (ps->start_location_));
+ return form;
}
/* Don't close the port here; if we re-enter this function via a
SCM
catch_protected_parse_body (void *p)
{
- Parse_start *ps = (Parse_start *) p;
+ return internal_ly_parse_scm (static_cast<Parse_start *> (p));
+}
- return (*ps->func_) (ps);
+SCM
+catch_protected_eval_body (void *p)
+{
+ return internal_ly_eval_scm (static_cast<Parse_start *> (p));
}
SCM
-parse_handler (void *data, SCM tag, SCM args)
+parse_handler (void *data, SCM /*tag*/, SCM args)
{
Parse_start *ps = (Parse_start *) data;
- ps->start_location_.error (_ ("GUILE signaled an error for the expression beginning here"));
+ ps->location_.error (_ ("GUILE signaled an error for the expression beginning here"));
if (scm_ilength (args) > 2)
scm_display_error_message (scm_cadr (args), scm_caddr (args), scm_current_error_port ());
- if (tag == ly_symbol2scm ("read-error"))
- ps->nchars = 1;
-
return SCM_UNDEFINED;
}
Catch #t : catch all Scheme level errors.
*/
return scm_internal_catch (SCM_BOOL_T,
- &catch_protected_parse_body,
+ catch_protected_parse_body,
+ (void *) ps,
+ &parse_handler, (void *) ps);
+}
+
+SCM
+protected_ly_eval_scm (Parse_start *ps)
+{
+ /*
+ Catch #t : catch all Scheme level errors.
+ */
+ return scm_internal_catch (SCM_BOOL_T,
+ catch_protected_eval_body,
(void *) ps,
&parse_handler, (void *) ps);
}
/* Try parsing. Upon failure return SCM_UNDEFINED. */
SCM
-ly_parse_scm (char const *s, int *n, Input i, bool safe, Lily_parser *parser)
+ly_parse_scm (Input &i, bool safe, Lily_parser *parser)
{
- Parse_start ps;
- ps.str = s;
- ps.start_location_ = i;
- ps.safe_ = safe;
- ps.form_ = SCM_UNDEFINED;
- ps.parser_ = parser;
- ps.func_ = internal_ly_parse_scm;
+ Parse_start ps (SCM_UNDEFINED, i, safe, parser);
SCM ans = parse_protect_global ? protected_ly_parse_scm (&ps)
: internal_ly_parse_scm (&ps);
- *n = ps.nchars;
return ans;
}
SCM
ly_eval_scm (SCM form, Input i, bool safe, Lily_parser *parser)
{
- Parse_start ps;
- ps.str = 0;
- ps.start_location_ = i;
- ps.safe_ = safe;
- ps.form_ = form;
- ps.parser_ = parser;
- ps.func_ = internal_ly_eval_scm;
+ Parse_start ps (form, i, safe, parser);
- SCM ans = parse_protect_global ? protected_ly_parse_scm (&ps)
+ SCM ans = parse_protect_global ? protected_ly_eval_scm (&ps)
: internal_ly_eval_scm (&ps);
scm_remember_upto_here_1 (form);
return ans;
#define YYLLOC_DEFAULT(Current,Rhs,N) \
((Current).set_location ((Rhs)[1], (Rhs)[N]))
-#define YYPRINT(file, type, value) \
- do { \
- if (scm_is_eq (value, SCM_UNSPECIFIED)) \
- break; \
- char *p = scm_to_locale_string \
- (scm_simple_format (SCM_BOOL_F, \
- scm_from_locale_string ("~S"), \
- scm_list_1 (value))); \
- fputs (p, file); \
- free (p); \
- } while (0)
+#define YYPRINT(file, type, value) \
+ do { \
+ if (scm_is_eq (value, SCM_UNSPECIFIED)) \
+ break; \
+ SCM s = scm_call_2 (ly_lily_module_constant ("value->lily-string"), \
+ value, \
+ parser->self_scm ()); \
+ char *p = scm_to_locale_string (s); \
+ fputs (p, file); \
+ free (p); \
+ } while (0)
%}
SCM proc = parser->lexer_->lookup_identifier ("toplevel-bookpart-handler");
scm_call_2 (proc, parser->self_scm (), $1);
}
+ | BOOK_IDENTIFIER {
+ SCM proc = parser->lexer_->lookup_identifier
+ (unsmob_book($1)->paper_
+ ? "toplevel-book-handler"
+ : "toplevel-bookpart-handler");
+ scm_call_2 (proc, parser->self_scm (), $1);
+ }
| score_block {
SCM proc = parser->lexer_->lookup_identifier ("toplevel-score-handler");
scm_call_2 (proc, parser->self_scm (), $1);
}
| SCM_TOKEN {
// Evaluate and ignore #xxx, as opposed to \xxx
- parser->lexer_->eval_scm_token ($1);
+ parser->lexer_->eval_scm_token ($1, @1);
}
| embedded_scm_active
{
{
SCM proc = parser->lexer_->lookup_identifier ("toplevel-text-handler");
scm_call_2 (proc, parser->self_scm (), out);
+ } else if (unsmob_score ($1))
+ {
+ SCM proc = parser->lexer_->lookup_identifier ("toplevel-score-handler");
+ scm_call_2 (proc, parser->self_scm (), $1);
} else if (!scm_is_eq ($1, SCM_UNSPECIFIED))
parser->parser_error (@1, _("bad expression type"));
}
embedded_scm_bare:
SCM_TOKEN
{
- $$ = parser->lexer_->eval_scm_token ($1);
+ $$ = parser->lexer_->eval_scm_token ($1, @1);
}
| SCM_IDENTIFIER
;
SCM_ARG
| SCM_TOKEN
{
- $$ = parser->lexer_->eval_scm_token ($1);
+ $$ = parser->lexer_->eval_scm_token ($1, @1);
}
| FRACTION
| full_markup_list
}
| book_body SCM_TOKEN {
// Evaluate and ignore #xxx, as opposed to \xxx
- parser->lexer_->eval_scm_token ($2);
+ parser->lexer_->eval_scm_token ($2, @2);
}
| book_body embedded_scm_active
{
{
SCM proc = parser->lexer_->lookup_identifier ("book-text-handler");
scm_call_2 (proc, $1, out);
+ } else if (unsmob_score ($2))
+ {
+ SCM proc = parser->lexer_->lookup_identifier ("book-score-handler");
+ scm_call_2 (proc, $1, $2);
} else if (!scm_is_eq ($2, SCM_UNSPECIFIED))
parser->parser_error (@2, _("bad expression type"));
}
}
| bookpart_body SCM_TOKEN {
// Evaluate and ignore #xxx, as opposed to \xxx
- parser->lexer_->eval_scm_token ($2);
+ parser->lexer_->eval_scm_token ($2, @2);
}
| bookpart_body embedded_scm_active
{
{
SCM proc = parser->lexer_->lookup_identifier ("bookpart-text-handler");
scm_call_2 (proc, $1, out);
+ } else if (unsmob_score ($2))
+ {
+ SCM proc = parser->lexer_->lookup_identifier ("bookpart-score-handler");
+ scm_call_2 (proc, $1, $2);
} else if (!scm_is_eq ($2, SCM_UNSPECIFIED))
parser->parser_error (@2, _("bad expression type"));
}
score_block:
SCORE '{' score_body '}' {
+ unsmob_score ($3)->origin ()->set_spot (@$);
$$ = $3;
}
;
+score_headers:
+ /* empty */
+ {
+ $$ = SCM_EOL;
+ }
+ | score_headers
+ {
+ if (!scm_is_pair ($1)
+ || !ly_is_module (scm_car ($1)))
+ $1 = scm_cons (ly_make_module (false), $1);
+ parser->lexer_->add_scope (scm_car ($1));
+ } lilypond_header
+ {
+ $$ = $1;
+ }
+ | score_headers output_def
+ {
+ Output_def *od = unsmob_output_def ($2);
+ if (od->lookup_variable (ly_symbol2scm ("is-paper")) == SCM_BOOL_T)
+ {
+ parser->parser_error (@2, _("\\paper cannot be used in \\score, use \\layout instead"));
+
+ }
+ else
+ {
+ if (scm_is_pair ($1) && ly_is_module (scm_car ($1)))
+ scm_set_cdr_x ($1, scm_cons ($2, scm_cdr ($1)));
+ else
+ $$ = scm_cons ($2, $1);
+ }
+ }
+ ;
+
+
+
score_body:
- music {
+ score_headers music {
SCM scorify = ly_lily_module_constant ("scorify-music");
- $$ = scm_call_2 (scorify, $1, parser->self_scm ());
+ $$ = scm_call_2 (scorify, $2, parser->self_scm ());
- unsmob_score ($$)->origin ()->set_spot (@$);
+ if (scm_is_pair ($1) && ly_is_module (scm_car ($1)))
+ {
+ unsmob_score ($$)->set_header (scm_car ($1));
+ $1 = scm_cdr ($1);
+ }
+ for (SCM p = scm_reverse_x ($1, SCM_EOL);
+ scm_is_pair (p); p = scm_cdr (p))
+ {
+ unsmob_score ($$)->
+ add_output_def (unsmob_output_def (scm_car (p)));
+ }
}
| embedded_scm_active {
- Score *score;
- if (unsmob_score ($1))
- score = new Score (*unsmob_score ($1));
- else {
- score = new Score;
+ if (!unsmob_score ($1))
+ {
+ $$ = (new Score)->unprotect ();
parser->parser_error (@1, _("score expected"));
}
- unsmob_score ($$)->origin ()->set_spot (@$);
- $$ = score->unprotect ();
}
| score_body
{
music_function_chord_body:
music_function_call
| MUSIC_IDENTIFIER
+ | embedded_scm
;
// Event functions may only take closed arglists, otherwise it would
SCM nn = parser->lexer_->lookup_identifier ("pitchnames");
parser->lexer_->push_note_state (nn);
} '{' score_body '}' {
+ unsmob_score ($4)->origin ()->set_spot (@$);
$$ = scm_list_2 (ly_lily_module_constant ("score-markup"), $4);
parser->lexer_->pop_state ();
}
*destination = p->self_scm ();
p->unprotect ();
return OUTPUT_DEF_IDENTIFIER;
+ } else if (unsmob_score (sid)) {
+ *destination = unsmob_score (sid)->clone ()->unprotect ();
+ return SCM_IDENTIFIER;
}
return -1;
}
halfBeaming = {
\set Staff.beamExceptions = #'((end . (((1 . 8) . (4 4))
- ((1 . 12) . (3 3)))))
+ ((1 . 12) . (3 3 3 3)))))
}
% Reels are in allabreve time with half note beaming.
}
\context {
- \type "Performer_Group"
+ \type "Performer_group"
\name NullVoice
\alias Staff
\alias Voice
#"x;x;o;1-1;o;1-2;"
\storePredefinedDiagram #default-fret-table \chordmode {b:7}
#guitar-tuning
- #(offset-fret 1 (chord-shape 'bes:7 guitar-tuning))
+ #"x;2-2;1-1;2-3;o;2-4;"
\storePredefinedDiagram #default-fret-table \chordmode {b:maj7}
#guitar-tuning
#"x;2-1;4-3;3-2;4-4;x;"
-See http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=log;h=refs/tags/release/2.18.0-1
+See http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=log;h=refs/tags/release/2.18.2-1
-commit aef26ebc6cc020fb83c5ad6150a8be7d41f44862
+commit c95f13fce772e23b5ba04fc8ea0c80855b069c24
Author: Phil Holmes <mail@philholmes.net>
-Date: Sun Dec 29 16:25:45 2013 +0000
+Date: Mon Mar 17 15:29:16 2014 +0000
- Release: bump VERSION_STABLE.
+ Release: update news.
-diff --git a/VERSION b/VERSION
-index 4221957..a830836 100644
---- a/VERSION
-+++ b/VERSION
-@@ -1,7 +1,7 @@
- PACKAGE_NAME=LilyPond
- MAJOR_VERSION=2
--MINOR_VERSION=17
--PATCH_LEVEL=98
-+MINOR_VERSION=18
-+PATCH_LEVEL=0
- MY_PATCH_LEVEL=
- VERSION_STABLE=2.18.0
--VERSION_DEVEL=2.17.98
-+VERSION_DEVEL=2.17.97
+diff --git a/Documentation/web/news-front.itexi b/Documentation/web/news-front.itexi
+index 73ced29..f82b56a 100644
+--- a/Documentation/web/news-front.itexi
++++ b/Documentation/web/news-front.itexi
+@@ -8,13 +8,53 @@
+
+ @c used for news about the upcoming release; see CG 10.2
+
++@newsItem
++@subsubheading Lilypond 2.18.2 released! @emph{March 23, 2014}
++
++We are proud to announce the release of GNU LilyPond 2.18.2.
++LilyPond is a music engraving program devoted to producing the
++highest-quality sheet music possible. It brings the aesthetics of
++traditionally engraved music to computer printouts.
++
++This version provides a number of updates to 2.18.0, including
++updated manuals. We recommend all users to upgrade to this version.
++
++@newsEnd
++
++
++@newsItem
++@subsubheading LilyPond production named BEST EDITION 2014 @emph{March 11, 2014}
++
++We are thrilled to announce that the new edition of the songs of Oskar
++Fried (1871-1941), published recently by our fellow contributors Urs Liska
++and Janek Warchoł [1], will receive the "Musikeditionspreis BEST EDITION
++2014" of the German Music Publishers' Association [2]! The ceremony will
++take place in a few days at the Frankfurt Musikmesse [3].
++
++We congratulate Janek and Urs for gaining such public recognition of
++typographical and editorial excellence of their work. We are also delighted
++to inform you that they intend to make their work available under a Free
++license as soon as the publisher expenses are covered. Please support this
++initiative by buying the printed volume through the publisher [4] or by
++pledging a contribution at the Indiegogo campaign [5]!
++
++[1] @uref{http://lilypondblog.org/category/fried-songs}@*
++[2] @uref{http://www.best-edition.de}@*
++[3] @uref{https://musik.messefrankfurt.com/frankfurt/en/besucher/events/awards/best_edition.html}@*
++[4] @uref{http://www.sound-rel.de}@*
++[5] @uref{http://igg.me/at/free-fried}
++
++@newsEnd
++
+
+ @newsItem
+-@subsubheading Lilypond 2.18.1 released! @emph{February 16, 2013}
++@subsubheading LilyPond 2.19.3 released @emph{March 2, 2014}
+
+-We are pleased to announce the release of GNU LilyPond 2.18.1.
+-This has a number of detailed improvements to the previous stable
+-release, and we recommend upgrading to this stable version.
++We are happy to announce the release of LilyPond 2.19.3. This
++release includes a number of enhancements, and contains
++some work in progress. You will have access to the very latest features, but
++some may be incomplete, and you may encounter bugs and crashes. If you require
++a stable version of Lilypond, we recommend using the 2.18 version.
+
+ @newsEnd
+
+diff --git a/Documentation/web/news.itexi b/Documentation/web/news.itexi
+index ea3ba36..ec7a73a 100644
+--- a/Documentation/web/news.itexi
++++ b/Documentation/web/news.itexi
+@@ -27,6 +27,53 @@ NOTE:
+ @end ignore
+
+ @newsItem
++@subsubheading LilyPond 2.18.1 @emph{February 16, 2014}
++
++We have released updated manuals for LilyPond's stable version, 2.18.
++The manuals are now for 2.18.1 and have a number of updates and improvements
++over 2.18.0. There will be a further release of 2.18 in the future (2.18.2),
++and this will include the updates to the manuals as well as some minor
++enhancements to the LilyPond core functionality.
++
++To summarise the current situation: stable LilyPond application: 2.18.0;
++stable LilyPond manuals: 2.18.1; development for both: 2.19.2.
++
++@newsEnd
++
++@newsItem
++@subsubheading LilyPond 2.19.2 released @emph{February 2, 2014}
++
++We are happy to announce the release of LilyPond 2.19.2. This
++release includes a number of enhancements, and contains
++some work in progress. You will have access to the very latest features, but
++some may be incomplete, and you may encounter bugs and crashes. If you require
++a stable version of Lilypond, we recommend using the 2.18 version.
++
++@newsEnd
++
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: lilypond 2.17.98\n"
+"Project-Id-Version: lilypond 2.18.2\n"
"Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu."
"lilypond.bugs\n"
-"POT-Creation-Date: 2013-12-29 15:29+0000\n"
+"POT-Creation-Date: 2014-03-17 15:20+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
msgid "Running `%s' on file `%s' to detect default page settings.\n"
msgstr ""
-#: book_latex.py:212 book_texinfo.py:228
+#: book_latex.py:214 book_texinfo.py:228
msgid "Unable to auto-detect default settings:\n"
msgstr ""
-#: book_latex.py:224 book_texinfo.py:240
+#: book_latex.py:226 book_texinfo.py:240
#, python-format
msgid ""
"Unable to auto-detect default settings:\n"
"%s"
msgstr ""
-#: book_latex.py:247
+#: book_latex.py:249
msgid "cannot detect textwidth from LaTeX"
msgstr ""
#: convertrules.py:82 convertrules.py:1856 convertrules.py:2032
#: convertrules.py:2175 convertrules.py:2506 convertrules.py:2801
-#: convertrules.py:3151 convertrules.py:3385
+#: convertrules.py:3151 convertrules.py:3385 convertrules.py:3697
msgid "bump version for release"
msgstr ""
msgid "Asking for broken bound padding at a non-broken bound."
msgstr ""
-#: hairpin.cc:256
+#: hairpin.cc:257
msgid "decrescendo too small"
msgstr ""
"values"
msgstr ""
-#: page-breaking.cc:277
+#: page-breaking.cc:276
msgid ""
"ignoring min-systems-per-page and max-systems-per-page because systems-per-"
"page was set"
msgstr ""
-#: page-breaking.cc:282
+#: page-breaking.cc:281
msgid ""
"min-systems-per-page is larger than max-systems-per-page, ignoring both "
"values"
msgstr ""
+#: page-breaking.cc:636
+#, c-format
+msgid "page %d has been compressed"
+msgstr ""
+
#: page-layout-problem.cc:402
msgid ""
"A page layout problem has been initiated that cannot accommodate footnotes."
msgstr ""
#: page-layout-problem.cc:731
-msgid ""
-"cannot fit music on page: ragged-spacing was requested, but page was "
-"compressed"
+msgid "ragged-bottom was specified, but page must be compressed"
msgstr ""
#: page-layout-problem.cc:734
#, c-format
-msgid "cannot fit music on page: overflow is %f"
-msgstr ""
-
-#: page-layout-problem.cc:736
-msgid "compressing music to fit"
+msgid "compressing over-full page by %.1f staff-spaces"
msgstr ""
#: page-layout-problem.cc:1199
msgid "Preprocessing graphical objects..."
msgstr ""
-#: parse-scm.cc:121
+#: parse-scm.cc:128
msgid "GUILE signaled an error for the expression beginning here"
msgstr ""
msgid "Too much lookahead"
msgstr ""
-#: parser.yy:441 parser.yy:757 parser.yy:823
+#: parser.yy:452 parser.yy:772 parser.yy:842
msgid "bad expression type"
msgstr ""
-#: parser.yy:655 parser.yy:1164
+#: parser.yy:666 parser.yy:1225
msgid "not a context mod"
msgstr ""
-#: parser.yy:858
-msgid "score expected"
+#: parser.yy:885 parser.yy:935
+msgid "\\paper cannot be used in \\score, use \\layout instead"
msgstr ""
-#: parser.yy:874
-msgid "\\paper cannot be used in \\score, use \\layout instead"
+#: parser.yy:921
+msgid "score expected"
msgstr ""
-#: parser.yy:898
+#: parser.yy:959
msgid "need \\paper for paper block"
msgstr ""
-#: parser.yy:1038 parser.yy:1060
+#: parser.yy:1099 parser.yy:1121
msgid "unexpected post-event"
msgstr ""
-#: parser.yy:1068
+#: parser.yy:1129
msgid "Ignoring non-music expression"
msgstr ""
-#: parser.yy:1080 parser.yy:2498
+#: parser.yy:1141 parser.yy:2559
msgid "music expected"
msgstr ""
-#: parser.yy:1375
+#: parser.yy:1436
msgid "not a symbol"
msgstr ""
-#: parser.yy:2187 parser.yy:2301 parser.yy:2314 parser.yy:2323
+#: parser.yy:2248 parser.yy:2362 parser.yy:2375 parser.yy:2384
msgid "bad grob property path"
msgstr ""
-#: parser.yy:2281
+#: parser.yy:2342
msgid "only \\consists and \\remove take non-string argument."
msgstr ""
-#: parser.yy:2342
+#: parser.yy:2403
msgid "bad context property path"
msgstr ""
-#: parser.yy:2443
+#: parser.yy:2504
msgid "simple string expected"
msgstr ""
-#: parser.yy:2461
+#: parser.yy:2522
msgid "symbol expected"
msgstr ""
-#: parser.yy:2616
+#: parser.yy:2677
msgid "not a rhythmic event"
msgstr ""
-#: parser.yy:2690
+#: parser.yy:2752
msgid "post-event expected"
msgstr ""
-#: parser.yy:2699 parser.yy:2704
+#: parser.yy:2761 parser.yy:2766
msgid "have to be in Lyric mode for lyrics"
msgstr ""
-#: parser.yy:2772
+#: parser.yy:2834
msgid "expecting string as script definition"
msgstr ""
-#: parser.yy:2880
+#: parser.yy:2942
msgid "not an articulation"
msgstr ""
-#: parser.yy:2952 parser.yy:2995
+#: parser.yy:3014 parser.yy:3057
msgid "not a duration"
msgstr ""
-#: parser.yy:3012
+#: parser.yy:3074
msgid "bass number expected"
msgstr ""
-#: parser.yy:3111
+#: parser.yy:3173
msgid "have to be in Note mode for notes"
msgstr ""
-#: parser.yy:3171
+#: parser.yy:3233
msgid "have to be in Chord mode for chords"
msgstr ""
-#: parser.yy:3186
+#: parser.yy:3248
msgid "markup outside of text script or \\lyricmode"
msgstr ""
-#: parser.yy:3191
+#: parser.yy:3253
msgid "unrecognized string, not in text script or \\lyricmode"
msgstr ""
-#: parser.yy:3352 parser.yy:3361
+#: parser.yy:3414 parser.yy:3423
msgid "not an unsigned integer"
msgstr ""
-#: parser.yy:3429
+#: parser.yy:3491
msgid "not a markup"
msgstr ""
msgid "wrong or undefined identifier: `%s'"
msgstr ""
-#: lexer.ll:381
+#: lexer.ll:380
msgid "string expected after \\include"
msgstr ""
-#: lexer.ll:391
+#: lexer.ll:390
msgid "end quote missing"
msgstr ""
-#: lexer.ll:743
+#: lexer.ll:741
msgid "EOF found inside a comment"
msgstr ""
-#: lexer.ll:748
+#: lexer.ll:746
msgid "EOF found inside string"
msgstr ""
-#: lexer.ll:763
+#: lexer.ll:761
msgid "Unfinished main input"
msgstr ""
-#: lexer.ll:834
+#: lexer.ll:832
#, c-format
msgid "invalid character: `%s'"
msgstr ""
-#: lexer.ll:963
+#: lexer.ll:961
#, c-format
msgid "unknown escaped string: `\\%s'"
msgstr ""
-#: lexer.ll:983
+#: lexer.ll:981
#, c-format
msgid "undefined character or shorthand: %s"
msgstr ""
-#: lexer.ll:1275
+#: lexer.ll:1273
msgid "non-UTF-8 input"
msgstr ""
-#: lexer.ll:1319
+#: lexer.ll:1317
#, c-format
msgid "file too old: %s (oldest supported: %s)"
msgstr ""
-#: lexer.ll:1320
+#: lexer.ll:1318
msgid "consider updating the input with the convert-ly script"
msgstr ""
-#: lexer.ll:1326
+#: lexer.ll:1324
#, c-format
msgid "program too old: %s (file requires: %s)"
msgstr ""
msgid "Undefined parent event class `~S'"
msgstr ""
-#: define-markup-commands.scm:1083
+#: define-markup-commands.scm:1087
msgid "no systems found in \\score markup, does it have a \\layout block?"
msgstr ""
-#: define-markup-commands.scm:2847
+#: define-markup-commands.scm:2851
#, scheme-format
msgid "Cannot find glyph ~a"
msgstr ""
-#: define-markup-commands.scm:3273
+#: define-markup-commands.scm:3277
#, scheme-format
msgid "no brace found for point size ~S "
msgstr ""
-#: define-markup-commands.scm:3274
+#: define-markup-commands.scm:3278
#, scheme-format
msgid "defaulting to ~S pt"
msgstr ""
-#: define-markup-commands.scm:3526
+#: define-markup-commands.scm:3530
#, scheme-format
msgid "not a valid duration string: ~a"
msgstr ""
-#: define-markup-commands.scm:3737
+#: define-markup-commands.scm:3741
#, scheme-format
msgid "not a valid duration string: ~a - ignoring"
msgstr ""
msgid "Writing ~a..."
msgstr ""
-#: framework-ps.scm:250
+#: framework-ps.scm:251
#, scheme-format
msgid "cannot embed ~S=~S"
msgstr ""
-#: framework-ps.scm:293
+#: framework-ps.scm:294
#, scheme-format
msgid "cannot extract file matching ~a from ~a"
msgstr ""
-#: framework-ps.scm:311
+#: framework-ps.scm:312
#, scheme-format
msgid "do not know how to embed ~S=~S"
msgstr ""
-#: framework-ps.scm:336
+#: framework-ps.scm:337
#, scheme-format
msgid "do not know how to embed font ~s ~s ~s"
msgstr ""
-#: framework-ps.scm:687
+#: framework-ps.scm:688
msgid ""
"\n"
"The PostScript backend does not support the\n"
msgid "define-session used after session start"
msgstr ""
-#: lily.scm:393
+#: lily.scm:399
msgid "Using (ice-9 curried-definitions) module\n"
msgstr ""
-#: lily.scm:396
+#: lily.scm:402
msgid "Guile 1.8\n"
msgstr ""
-#: lily.scm:455
+#: lily.scm:461
#, scheme-format
msgid "cannot find: ~A"
msgstr ""
-#: lily.scm:878
+#: lily.scm:884
msgid "Success: compilation successfully completed"
msgstr ""
-#: lily.scm:879
+#: lily.scm:885
msgid "Compilation completed with warnings or errors"
msgstr ""
-#: lily.scm:940
+#: lily.scm:946
#, scheme-format
msgid "job ~a terminated with signal: ~a"
msgstr ""
-#: lily.scm:943
+#: lily.scm:949
#, scheme-format
msgid ""
"logfile ~a (exit ~a):\n"
"~a"
msgstr ""
-#: lily.scm:965 lily.scm:1054
+#: lily.scm:971 lily.scm:1060
#, scheme-format
msgid "failed files: ~S"
msgstr ""
-#: lily.scm:1045
+#: lily.scm:1051
#, scheme-format
msgid "Redirecting output to ~a..."
msgstr ""
-#: lily.scm:1064 ps-to-png.scm:66
+#: lily.scm:1070 ps-to-png.scm:66
#, scheme-format
msgid "Invoking `~a'...\n"
msgstr ""
msgid "negative replication count; ignoring"
msgstr ""
-#: music-functions.scm:272
+#: music-functions.scm:273
msgid "More alternatives than repeats. Junking excess alternatives"
msgstr ""
-#: music-functions.scm:303
+#: music-functions.scm:304
#, scheme-format
msgid "invalid tremolo repeat count: ~a"
msgstr ""
-#: music-functions.scm:459
+#: music-functions.scm:480
#, scheme-format
msgid "bad grob property path ~a"
msgstr ""
-#: music-functions.scm:753
+#: music-functions.scm:774
msgid "Bad chord repetition"
msgstr ""
-#: music-functions.scm:788
+#: music-functions.scm:809
#, scheme-format
msgid "music expected: ~S"
msgstr ""
-#: music-functions.scm:1144
+#: music-functions.scm:1165
#, scheme-format
msgid "cannot find quoted music: `~S'"
msgstr ""
-#: music-functions.scm:1282
+#: music-functions.scm:1303
msgid "Add @var{octave-shift} to the octave of @var{pitch}."
msgstr ""
-#: music-functions.scm:1342
+#: music-functions.scm:1363
#, scheme-format
msgid "Unknown octaveness type: ~S "
msgstr ""
-#: music-functions.scm:1343
+#: music-functions.scm:1364
msgid "Defaulting to 'any-octave."
msgstr ""
-#: music-functions.scm:1688
+#: music-functions.scm:1709
#, scheme-format
msgid "unknown accidental style: ~S"
msgstr ""
+#: music-functions.scm:1927
+msgid "Missing duration"
+msgstr ""
+
#: output-ps.scm:278 output-svg.scm:539
#, scheme-format
msgid "unknown line-cap-style: ~S"
msgid "error in #{ ... #}"
msgstr ""
-#: part-combiner.scm:598
+#: part-combiner.scm:607
#, scheme-format
msgid "quoted music `~a' is empty"
msgstr ""
-%!PS-Adobe-1.0: music-drawing-routines.ps
+%!PS-Adobe-2.0
%
% Functions for direct and embedded PostScript
0 setgray 0 setlinecap % Prepare graphics state
1 setlinewidth 0 setlinejoin
10 setmiterlimit [ ] 0 setdash newpath
- /languagelevel where % If level not equal to 1 then
- {pop languagelevel % set strokeadjust and
- 1 ne % overprint to their defaults.
- {false setstrokeadjust false setoverprint
- } if
- } if
+ false setoverprint
} bind def
/EndEPSF { %def
b4_Inc_state restore
} bind def
-/stroke_and_fill {
+/stroke_and_fill? {
+ {
gsave
- stroke
+ false setstrokeadjust
+ stroke
grestore
fill
+ }
+ {
+ stroke
+ }
+ ifelse
} bind def
/vector_add { % x1 y1 x2 y2 vector_add x1+x2 y1+y2
/draw_round_box % width height x y blot
{
- dup
- 0.0 gt {
- setlinewidth % w h x y
- rmoveto % w h
- 2 copy 0 ne exch 0 ne and
+ 0 max setlinewidth
+ matrix currentmatrix 5 1 roll
+ currentpoint translate newpath translate
+ 2 copy 0 min exch 0 min exch translate
+ abs exch abs exch
+ currentlinewidth 0 eq
+ { % straight corners
+ 2 copy 2 mul gt
+ { % horizontal
+ 0 1 index 2 div moveto
+ setlinewidth
+ 0 rlineto
+ 0 setlinecap
+ stroke
+ }
+ {
+ 2 copy exch 2 mul gt
+ { % vertical
+ 1 index 2 div 0 moveto
+ exch setlinewidth
+ 0 exch rlineto
+ 0 setlinecap
+ stroke
+ }
+ {
+ 0 0 4 2 roll rectfill
+ }
+ ifelse
+ }
+ ifelse
+ }
+ { % rounded corners
+ 2 copy 0 eq exch 0 eq or
+ { % line shape
+ 0 0 moveto
+ rlineto
+ 1 setlinecap
+ stroke
+ 0 setlinecap
+ }
+ { % full shape
+ currentstrokeadjust {
+ currentlinewidth 2 div
+ 0 0 2 index 180 270 arc
+ 2 index 0 2 index 270 360 arc
+ 3 copy 0 90 arc
+ 0 2 index 3 -1 roll 90 180 arc
+ closepath
+ 2 copy 2 mul gt
+ { % horizontal
+ 2 copy add currentlinewidth add 10 add % large enough
+ 0 1 index neg moveto
+ 2 index 1 index neg lineto
+ 2 index 1 index lineto
+ 0 exch lineto closepath
+ gsave clip newpath
+ 0 1 index 2 div moveto
+ currentlinewidth add setlinewidth
+ 0 rlineto
+ 2 setlinecap
+ stroke
+ grestore
+ }
{
- 0 setlinecap
- 1 setlinejoin
- currentpoint % w h x1 y1
- 4 2 roll % x1 y1 w h
- 4 copy
- rectfill
- rectstroke
- } {
- 1 setlinecap
- rlineto stroke
- } ifelse
- } {
- pop % w h x y
- rmoveto % w h
- currentpoint % w h x1 y1
- 4 2 roll % x1 y1 w h
- rectfill
- } ifelse
+ 2 copy exch 2 mul gt
+ { % vertical
+ 2 copy add currentlinewidth add 10 add % large enough
+ dup neg 0 moveto
+ dup 0 lineto
+ dup 2 index lineto
+ neg 1 index lineto closepath
+ gsave clip newpath
+ 1 index 2 div 0 moveto
+ exch currentlinewidth add setlinewidth
+ 0 exch rlineto
+ 2 setlinecap
+ stroke
+ grestore
+ }
+ {
+ pop pop
+ fill
+ }
+ ifelse
+ }
+ ifelse
+ newpath
+ }
+ {
+ 1 setlinejoin
+ 0 0 4 2 roll 4 copy rectstroke rectfill
+ }
+ ifelse
+ }
+ ifelse
+ }
+ ifelse
+ setmatrix
} bind def
/draw_polygon % fill? x(n) y(n) x(n-1) y(n-1) ... x(0) y(0) n blot
rmoveto % x(0) y(0)
{ polygon_x polygon_y vector_add lineto } repeat % n times
closepath
- { %fill?
- stroke_and_fill
- }{
- stroke
- } ifelse
+ stroke_and_fill?
} bind def
/draw_circle % filled? radius thickness draw_circle
3 2 roll % f? x0 y0 r
dup 0 rmoveto
0 360 arc closepath
- { stroke_and_fill }
- { stroke }
- ifelse
+ stroke_and_fill?
} bind def
/draw_ellipse % filled? x-radius y-radius thickness draw_ellipse
1 0 rmoveto
1 0 360 arc closepath
savematrix setmatrix
- { stroke_and_fill}
- { stroke }
- ifelse
+ stroke_and_fill?
} bind def
/draw_partial_ellipse % filled connect x-radius y-radius startangle endangle thickness draw_partial_ellipse
connect {
startangle cos startangle sin moveto endangle cos endangle sin lineto }
if
- savematrix setmatrix filled { stroke_and_fill } { stroke } ifelse
+ savematrix setmatrix filled stroke_and_fill?
grestore
} bind def
{
setlinewidth % dx dy x1 y1
1 setlinecap
- 1 setlinejoin
rmoveto % dx dy
rlineto
stroke
/draw_dashed_line % dx dy thickness dashpattern offset draw_dashed_line
{
1 setlinecap
- 1 setlinejoin
setdash % dx dy thickness
setlinewidth %dx dy
rlineto
progress (_ ("Running `%s' on file `%s' to detect default page settings.\n")
% (global_options.latex_program, tmpfile))
- cmd = 'TEXINPUTS="%s:$TEXINPUTS" %s %s' \
- % (global_options.input_dir, global_options.latex_program, tmpfile)
+ cmd = '%s %s' % (global_options.latex_program, tmpfile)
debug ("Executing: %s\n" % cmd)
run_env = os.environ.copy()
run_env['LC_ALL'] = 'C'
+ run_env['TEXINPUTS'] = '%s:%s' % \
+ (global_options.input_dir, run_env.get('TEXINPUTS',""))
### unknown why this is necessary
universal_newlines = True
if sys.platform == 'mingw32':
universal_newlines = False
+ if (sys.platform == 'mingw32') and (sys.version_info < (2, 6)):
### use os.system to avoid weird sleep() problems on
### GUB's python 2.4.2 on mingw
# make file to write to
r"\1(make-sequential-music (list \2))", str)
return str
+@rule ((2, 18, 0),
+ _ ("bump version for release"))
+def conv (str):
+ return str
# Guidelines to write rules (please keep this at the end of this file)
#
;;;
;;; x
;;;
- (X-extent ,number-pair? "Hard coded extent in X@tie{}direction.")
+ (X-extent ,number-pair? "Extent (size) in the X@tie{}direction,
+measured in staff-space units, relative to object's reference point.")
(X-offset ,number? "The horizontal amount that this object is
moved relative to its X-parent.")
(X-positions ,number-pair? "Pair of X staff coordinates of a spanner
;;;
;;; y
;;;
- (Y-extent ,number-pair? "Hard coded extent in Y@tie{}direction.")
+ (Y-extent ,number-pair? "Extent (size) in the Y@tie{}direction,
+measured in staff-space units, relative to object's reference point.")
(Y-offset ,number? "The vertical amount that this object is moved
relative to its Y-parent.")
(direction . ,RIGHT)
(font-size . -4)
(horizon-padding . 0.1) ; to avoid interleaving with augmentation dots
+ ;; minimum shift to the right, in case the parent note has no stem
+ (minimum-space . 2.5)
(padding . 0.3)
(side-axis . ,X)
(stencil . ,parenthesize-elements)
(stencils . ,parentheses-item::calc-parenthesis-stencils)
- ;; offset a bit to the right, further if needed to clear the main note
- (X-offset . ,(lambda (grob)
- (ly:side-position-interface::x-aligned-side grob 2.5)))
+ (X-offset . ,ly:side-position-interface::x-aligned-side)
(Y-extent . ,grob::always-Y-extent-from-stencil)
(meta . ((class . Item)
(interfaces . (axis-group-interface
"
@cindex paths, drawing
@cindex drawing paths
-Draws a path with line thickness @var{thickness} according to the
+Draws a path with line @var{thickness} according to the
directions given in @var{commands}. @var{commands} is a list of
lists where the @code{car} of each sublist is a drawing command and
the @code{cdr} comprises the associated arguments for each command.
-Line-cap styles and line-join styles may be customized by
-overriding the @code{line-cap-style} and @code{line-join-style}
-properties, respectively. Available line-cap styles are
-@code{'butt}, @code{'round}, and @code{'square}. Available
-line-join styles are @code{'miter}, @code{'round}, and
-@code{'bevel}.
-
-The property @code{filled} specifies whether or not the path is
-filled with color.
-
There are seven commands available to use in the list
@code{commands}: @code{moveto}, @code{rmoveto}, @code{lineto},
@code{rlineto}, @code{curveto}, @code{rcurveto}, and
Note that a sequence of commands @emph{must} begin with a
@code{moveto} or @code{rmoveto} to work with the SVG output.
+Line-cap styles and line-join styles may be customized by
+overriding the @code{line-cap-style} and @code{line-join-style}
+properties, respectively. Available line-cap styles are
+@code{'butt}, @code{'round}, and @code{'square}. Available
+line-join styles are @code{'miter}, @code{'round}, and
+@code{'bevel}.
+
+The property @code{filled} specifies whether or not the path is
+filled with color.
+
@lilypond[verbatim,quote]
samplePath =
#'((moveto 0 0)
\\markup {
\\path #0.25 #samplePath
+
+ \\override #'(line-join-style . miter) \\path #0.25 #samplePath
+
+ \\override #'(filled . #t) \\path #0.25 #samplePath
}
@end lilypond"
(let* ((half-thickness (/ thickness 2))
(music->lily-string element parser))
#f)))
-(define (property-value->lily-string arg parser)
+(define-public (value->lily-string arg parser)
(cond ((ly:music? arg)
(music->lily-string arg parser))
((string? arg)
(format #f "#~s" arg))
((markup? arg)
(markup->lily-string arg))
+ ((ly:duration? arg)
+ (format #f "##{ ~a #}" (duration->lily-string arg #:force-duration #t)))
+ ((ly:pitch? arg)
+ (format #f "~a~a"
+ (note-name->lily-string arg parser)
+ (octave->lily-string arg)))
(else
(format #f "#~a" (scheme-expr->lily-string arg)))))
""
(format #f "~a . " (*current-context*)))
property
- (property-value->lily-string value parser)
+ (value->lily-string value parser)
(new-line->lily-string))))
(define-display-method PropertyUnset (expr parser)
(if (eqv? (*current-context*) 'Bottom)
(cons symbol properties)
(cons* (*current-context*) symbol properties))
- (property-value->lily-string value parser)
+ (value->lily-string value parser)
(new-line->lily-string))))
(define-display-method RevertProperty (expr parser)
"/output-scale "
(number->string (ly:output-def-lookup layout 'output-scale)) " def\n"
(output-entry "page-height" 'paper-height)
- (output-entry "page-width" 'paper-width)))
+ (output-entry "page-width" 'paper-width)
+ (if (ly:get-option 'strokeadjust) "true setstrokeadjust\n" "")
+ ))
(define (dump-page outputter page page-number page-count landscape?)
(ly:outputter-dump-string
"")
"%%EndPageSetup\n"
"\n"
- "true setstrokeadjust\n"
"gsave 0 paper-height translate set-ps-scale-to-lily-scale\n"))
(ly:outputter-dump-stencil outputter page)
(ly:outputter-dump-string outputter "stroke grestore\nshowpage\n"))
#t
"Don't use directories from input files while
constructing output file names.")
+ (strokeadjust
+ #f
+ "Set the PostScript strokeadjust operator explicitly.
+This employs different drawing primitives, resulting in
+large PDF file size increases but often markedly better
+PDF previews.")
(svg-woff
#f
"Use woff font files in SVG backend.")
parser
(format #f
(_ "wrong type for argument ~a. Expecting ~a, found ~s")
- n (type-name pred) arg)
+ n (type-name pred) (music->make-music arg))
location))
(define-ly-syntax-simple (void-music)
(use-modules (scm safe-utility-defs))
(use-modules (ice-9 optargs))
+(use-modules (srfi srfi-11))
;;; ly:music-property with setter
;;; (ly:music-property my-music 'elements)
(unfold-repeats e)))
music))
+(define-public (unfold-repeats-fully music)
+ "Unfolds repeats and expands the resulting @code{unfolded-repeated-music}."
+ (map-some-music
+ (lambda (m)
+ (and (music-is-of-type? m 'unfolded-repeated-music)
+ (make-sequential-music
+ (ly:music-deep-copy
+ (let ((n (ly:music-property m 'repeat-count))
+ (alts (ly:music-property m 'elements))
+ (body (ly:music-property m 'element)))
+ (cond ((<= n 0) '())
+ ((null? alts) (make-list n body))
+ (else
+ (concatenate
+ (zip (make-list n body)
+ (append! (make-list (max 0 (- n (length alts)))
+ (car alts))
+ alts))))))))))
+ (unfold-repeats music)))
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; property setting music objs.
(set! (ly:music-property repeat-chord 'articulations)
(append!
(set-origin! (ly:music-deep-copy arts))
- (ly:music-property repeat-chord 'articulations))))))
+ (ly:music-property repeat-chord 'articulations)))))
+ repeat-chord)
(define-public (expand-repeat-chords! event-types music)
last-chord))
(last-chord
(set! (ly:music-property music 'duration) '())
- (copy-repeat-chord last-chord music chord-repeat event-types)
- music)
+ (copy-repeat-chord last-chord music chord-repeat event-types))
(else
(ly:music-warning music (_ "Bad chord repetition"))
#f)))
(map (lambda (x) (ly:music-property x 'pitch))
(event-chord-notes event-chord)))
+(define-public (event-chord-reduce music)
+ "Reduces event chords in @var{music} to their first note event,
+retaining only the chord articulations. Returns the modified music."
+ (map-some-music
+ (lambda (m)
+ (and (music-is-of-type? m 'event-chord)
+ (let*-values (((notes arts) (partition
+ (lambda (mus)
+ (music-is-of-type? mus 'rhythmic-event))
+ (ly:music-property m 'elements)))
+ ((dur) (ly:music-property m 'duration))
+ ((full-arts) (append arts
+ (ly:music-property m 'articulations)))
+ ((first-note) (and (pair? notes) (car notes))))
+ (cond (first-note
+ (set! (ly:music-property first-note 'articulations)
+ full-arts)
+ first-note)
+ ((ly:duration? dur)
+ ;; A repeat chord. Produce an unpitched note.
+ (make-music 'NoteEvent
+ 'duration dur
+ 'articulations full-arts))
+ (else
+ (ly:music-error m (_ "Missing duration"))
+ (make-music 'NoteEvent
+ 'duration (ly:make-duration 2 0 0)
+ 'articulations full-arts))))))
+ music))
+
+
(defmacro-public make-relative (variables reference music)
"The list of pitch or music variables in @var{variables} is used as
a sequence for creating relativable music from @var{music}.
(helper 0 '()))
+(define recording-group-functions
+ ;;Selected parts from @var{toplevel-music-functions} not requiring @code{parser}.
+ (list
+ (lambda (music) (expand-repeat-chords! '(rhythmic-event) music))))
+
+
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define-public (recording-group-emulate music odef)
"Interpret @var{music} according to @var{odef}, but store all events
(ly:add-listener new-context-listener
(ly:context-events-below global) 'AnnounceNewContext)
(ly:add-listener mom-listener (ly:context-event-source global) 'Prepare)
- (ly:interpret-music-expression (make-non-relative-music music) global)
+ (ly:interpret-music-expression
+ (make-non-relative-music
+ (fold (lambda (x m) (x m)) music recording-group-functions))
+ global)
context-list))
(define-public (make-part-combine-music parser music-list direction)