From 3cb97f5b7145f89998549e062fb80b437cd84715 Mon Sep 17 00:00:00 2001 From: Werner Lemberg Date: Sun, 2 Nov 2008 14:29:37 +0100 Subject: [PATCH] Create a new directory for revised snippets. These files should be contributed to the LSR so that they get re-imported by lilypond. --- input/new/revised/README | 3 + .../new/revised/accordion-discant-symbols.ly | 192 ++++++++++++++++++ ...yles-depending-on-the-step-of-the-scale.ly | 100 +++++++++ .../revised/non-traditional-key-signatures.ly | 85 ++++++++ input/new/revised/rest-styles.ly | 55 +++++ .../snap-pizzicato-markup-bartok-pizzicato.ly | 69 +++++++ input/new/revised/tweaking-clef-properties.ly | 152 ++++++++++++++ 7 files changed, 656 insertions(+) create mode 100644 input/new/revised/README create mode 100644 input/new/revised/accordion-discant-symbols.ly create mode 100644 input/new/revised/applying-note-head-styles-depending-on-the-step-of-the-scale.ly create mode 100644 input/new/revised/non-traditional-key-signatures.ly create mode 100644 input/new/revised/rest-styles.ly create mode 100644 input/new/revised/snap-pizzicato-markup-bartok-pizzicato.ly create mode 100644 input/new/revised/tweaking-clef-properties.ly diff --git a/input/new/revised/README b/input/new/revised/README new file mode 100644 index 0000000000..636b88deeb --- /dev/null +++ b/input/new/revised/README @@ -0,0 +1,3 @@ +This directory contains snippet files which are already part of lilypond but +have been revised. They should be contributed to the LSR so that they in +turn are (automatically) included in lilypond again. diff --git a/input/new/revised/accordion-discant-symbols.ly b/input/new/revised/accordion-discant-symbols.ly new file mode 100644 index 0000000000..906c12a5cc --- /dev/null +++ b/input/new/revised/accordion-discant-symbols.ly @@ -0,0 +1,192 @@ +%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it +%% This file is in the public domain. + +\version "2.11.62" + +\header { + lsrtags = "keyboards" + + + doctitlees = "Símbolos de acordeón discanto" + texidoces = " +Los símbolos específicos de acordeón discanto se escriben mediante +@code{\\markup}. Se puede trucar la colocación vertical de los símbolos +modificando los argumentos de @code{\\raise}. +" + + + doctitlede = "Symbole für Akkordeon-Diskantregister" + texidocde = " +Diskantregister für Akkordeon können mit @code{\\markup} dargestellt werden. +Die vertikale Position der einzelnen Elemente werden mit @code{\\raise} +angepasst. +" + + + doctitle = "Accordion-discant symbols" + texidoc = " +Accordion discant-specific symbols are added using @code{\\markup}. The +vertical placement of the symbols can be tweaked by changing the +@code{\\raise} arguments. +" +} % begin verbatim + +discant = \markup { + \musicglyph #"accordion.accDiscant" +} +dot = \markup { + \musicglyph #"accordion.accDot" +} + +% 16 voets register +accBasson = ^\markup { + \combine + \discant + \raise #0.5 \dot +} + +% een korig 8 en 16 voets register +accBandon = ^\markup { + \combine + \discant + \combine + \raise #0.5 \dot + \raise #1.5 \dot +} + +accVCello = ^\markup { + \combine + \discant + \combine + \raise #0.5 \dot + \combine + \raise #1.5 \dot + \translate #'(1 . 0) \raise #1.5 \dot +} + +% 4-8-16 voets register +accHarmon = ^\markup { + \combine + \discant + \combine + \raise #0.5 \dot + \combine + \raise #1.5 \dot + \raise #2.5 \dot +} + +accTrombon = ^\markup { + \combine + \discant + \combine + \raise #0.5 \dot + \combine + \raise #1.5 \dot + \combine + \translate #'(1 . 0) \raise #1.5 \dot + \translate #'(-1 . 0) \raise #1.5 \dot +} + +% eenkorig 4 en 16 voets register +accOrgan = ^\markup { + \combine + \discant + \combine + \raise #0.5 \dot + \raise #2.5 \dot +} + +accMaster = ^\markup { + \combine + \discant + \combine + \raise #0.5 \dot + \combine + \raise #1.5 \dot + \combine + \translate #'(1 . 0) \raise #1.5 \dot + \combine + \translate #'(-1 . 0) \raise #1.5 \dot + \raise #2.5 \dot +} + +accAccord = ^\markup { + \combine + \discant + \combine + \raise #1.5 \dot + \combine + \translate #'(1 . 0) \raise #1.5 \dot + \combine + \translate #'(-1 . 0) \raise #1.5 \dot + \raise #2.5 \dot +} + +accMusette = ^\markup { + \combine + \discant + \combine + \raise #1.5 \dot + \combine + \translate #'(1 . 0) \raise #1.5 \dot + \translate #'(-1 . 0) \raise #1.5 \dot +} + +accCeleste = ^\markup { + \combine + \discant + \combine + \raise #1.5 \dot + \translate #'(-1 . 0) \raise #1.5 \dot +} + +accOboe = ^\markup { + \combine + \discant + \combine + \raise #1.5 \dot + \raise #2.5 \dot +} + +accClarin = ^\markup { + \combine + \discant + \raise #1.5 \dot +} + +accPiccolo = ^\markup { + \combine + \discant + \raise #2.5 \dot +} + +accViolin = ^\markup { + \combine + \discant + \combine + \raise #1.5 \dot + \combine + \translate #'(1 . 0) \raise #1.5 \dot + \raise #2.5 \dot +} + +\layout { ragged-right = ##t } + +\relative c'' { + c4 d\accBasson e f + c4 d\accBandon e f + c4 d\accVCello e f + c4 d\accHarmon e f + c4 d\accTrombon e f + \break + c4 d\accOrgan e f + c4 d\accMaster e f + c4 d\accAccord e f + c4 d\accMusette e f + c4 d\accCeleste e f + \break + c4 d\accOboe e f + c4 d\accClarin e f + c4 d\accPiccolo e f + c4 d\accViolin e f +} diff --git a/input/new/revised/applying-note-head-styles-depending-on-the-step-of-the-scale.ly b/input/new/revised/applying-note-head-styles-depending-on-the-step-of-the-scale.ly new file mode 100644 index 0000000000..04d84cd810 --- /dev/null +++ b/input/new/revised/applying-note-head-styles-depending-on-the-step-of-the-scale.ly @@ -0,0 +1,100 @@ +%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it +%% This file is in the public domain. + +\version "2.11.62" + +\header { + lsrtags = "pitches, editorial-annotations" + + + doctitlees = "Aplicar estilos de cabeza según la nota de la escala" + texidoces = " +La propiedad @code{shapeNoteStyles} se puede usar para definir varios +estilos de cabezas de nota para cada grado de la escala (según esté +establecido por la armadura o por la propiedad @q{tonic}). Esta propiedad +requiere un conjunto de símbolos, que pueden ser puramente arbitrarios (se +permiten expresiones geométricas como @code{triangle}, triángulo, +@code{cross}, aspas, y @code{xcircle}, círculo con aspas) o basados en una +antigua tradición americana de grabado (ciertos nombres de nota latinos +trambién se permiten). + +Dicho esto, para imitar antiguos cancioneros americanos, existen varios +estilos predefinidos de cabezas de nota disponibles a través de +instrucciones de abreviatura como @code{\\aikenHeads} o +@code{\\sacredHarpHeads}. + +Este ejemplo muestra distintas formas de obtener cabezas de notas con forma, +y muestra la capacidad de transportar una melodía sin perder la +correspondencia entre las funciones armónicas y los estilos de cabezas de +nota. +" + + + doctitlede = "Notenkopfstile besierend auf der Tonleiterstufe erstellen" + texidocde = " +Die @code{shapeNoteStyles}-(NotenFormenStile)-Eigenschaft kann benutzt +werden, um verschiedene Notenstile für jeden Schritt der Tonleiter +zudefinieren (vorgegeben von der Tonart oder der @q{tonic} +(Tonika)-Eigenschaft. Diese Eigenschaft braucht eine Anzahl von Symbolen, +welche beliebig sein können (geometrische Ausdrücke wie @code{triangle} +(Dreieck), @code{cross} (Kreuz) und @code{xcircle} (X-Kreis) sind erlaubt) +oder basierend auf einer alten amerikanischen Notensatztradition (einige +lateinische Notenbezeichnungen sind auch erlaubt). + +Um alte amerikanische Liederbücher zu imitieren, gibt es einige +vordefinierte Notenstile wie etwa @code{\\aikenHeads} (im Stil von Aiken) +oder @code{\\sacredHarpHeads} (im Stil der Sacred-Harp-Tradition). + +Dieses Beispiel zeigt, wie man unterschiedlich geformte Noten erhält und +eine Melodie transponieren kann, ohne dass das Verhältnis zwischen den +harmonischen Funktionen und dem Notenstil verloren geht. +" + + + doctitle = "Applying note head styles depending on the step of the scale" + texidoc = " +The @code{shapeNoteStyles} property can be used to define various note head +styles for each step of the scale (as set by the key signature or the +@q{tonic} property). This property requires a set of symbols, which can be +arbitrary (geometrical expressions such as @code{triangle}, @code{cross}, +and @code{xcircle} are allowed) or based on old American engraving tradition +(some latin note names are also allowed). + +That said, to imitate old American song books, there are several predefined +note head styles available through shortcut commands such as +@code{\\aikenHeads} or @code{\\sacredHarpHeads}. + +This example shows different ways to obtain shape note heads, and +demonstrates the ability to transpose a melody without losing the +correspondence between harmonic functions and note head styles. +" +} % begin verbatim + +\layout { ragged-right = ##t } + +fragment = { + \key c \major + c2 d + e2 f + g2 a + b2 c +} + +\score { + \new Staff { + \transpose c d + \relative c' { + \set shapeNoteStyles = #'#(do re mi fa + #f la ti) + \fragment + } + + \break + + \relative c' { + \set shapeNoteStyles = #'#(cross triangle fa #f + mensural xcircle diamond) + \fragment + } + } +} diff --git a/input/new/revised/non-traditional-key-signatures.ly b/input/new/revised/non-traditional-key-signatures.ly new file mode 100644 index 0000000000..7929c556b3 --- /dev/null +++ b/input/new/revised/non-traditional-key-signatures.ly @@ -0,0 +1,85 @@ +%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it +%% This file is in the public domain. + +\version "2.11.62" + +\header { + lsrtags = "pitches, staff-notation" + + + doctitlees = "Armaduras de tonalidad no tradicionales" + texidoces = " +La muy utilizada instrucción @code{\\key} establece la propiedad +@code{keySignature} property, dentro del contexto @code{Staff}. + +Para crear armaduras de tonalidad no estándar, ajuste esta propiedad +directamente. El formato de esta instrucción es una lista: + +@code{\\set Staff.keySignature = #`(((octava . paso) . alteración) ((octava +. paso) . alteración) ...)} donde, para cada elemento dentro de la lista, +@code{octava} especifica la octava (siendo cero la octava desde el Do +central hasta el Si por encima), @code{paso} especifica la nota dentro de la +octava (cero significa Do y 6 significa Si), y @code{alteración} es +@code{,SHARP ,FLAT ,DOUBLE-SHARP} etc. (observe la coma precedente.) + +Alternativamente, para cada elemento de la lista el uso del formato más +conciso @code{(paso . alteración)} especifica que la misma alteración debe +estar en todas las octavas. + +He aquí un ejemplo de una posible armadura para generar una escala exátona: +" + + + doctitlede = "Untypische Tonarten" + texidocde = " +Der üblicherweise benutzte @code{\\key}-Befehl setzt die +@code{keySignature}-Eigenschaft im @code{Staff}-Kontext. + +Um untypische Tonartenvorzeichen zu erstellen, muss man diese Eigenschaft +direkt setzen. Das Format für den Befehl ist eine Liste: @code{\\set +Staff.keySignature = #`(((Oktave . Schritt) . Alteration) ((Oktave . +Schritt) . Alteration) ...)}, wobei für jedes Element in der Liste +@code{Oktave} die Oktave angibt (0@tie{}ist die Oktave vom +eingestrichenen@tie{}C bis zum eingestrichenen@tie{}H). @code{Schritt} gibt +die Note innerhalb der Oktave an (0@tie{}heißt@tie{}C und +6@tie{}heißt@tie{}H), und @code{Alteration} ist @code{,SHARP ,FLAT +,DOUBLE-SHARP} usw. (Beachte das beginnende Komma.) + +Alternativ kann auch jedes Element der Liste mit dem allgemeineren Format +@code{(Schritt . Alteration)} gesetzt werden, wobei dann die Einstellungen +für alle Oktaven gelten. + +Hier ein Beispiel einer möglichen Tonart für eine Ganztonleiter: +" + + + doctitle = "Non-traditional key signatures" + texidoc = " +The commonly used @code{\\key} command sets the @code{keySignature} +property, in the @code{Staff} context. + +To create non-standard key signatures, set this property directly. The +format of this command is a list: + +@code{\\set Staff.keySignature = #`(((octave . step) . alter) ((octave +. step) . alter) ...)} where, for each element in the list, +@code{octave} specifies the octave (0@tie{}being the octave from +middle@tie{}C to the B above), @code{step} specifies the note within the +octave (0@tie{}means@tie{}C and 6@tie{}means@tie{}B), and @code{alter} is +@code{,SHARP ,FLAT ,DOUBLE-SHARP} etc. (Note the leading comma.) + +Alternatively, for each item in the list, using the more concise format +@code{(step . alter)} specifies that the same alteration should hold in all +octaves. + +Here is an example of a possible key signature for generating a whole-tone +scale: +" +} % begin verbatim +\relative c' { + \set Staff.keySignature = #`(((0 . 3) . ,SHARP) + ((0 . 5) . ,FLAT) + ((0 . 6) . ,FLAT)) + c4 d e fis + aes4 bes c2 +} diff --git a/input/new/revised/rest-styles.ly b/input/new/revised/rest-styles.ly new file mode 100644 index 0000000000..22f19cf164 --- /dev/null +++ b/input/new/revised/rest-styles.ly @@ -0,0 +1,55 @@ +%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it +%% This file is in the public domain. + +\version "2.11.62" + +\header { + lsrtags = "rhythms, ancient-notation, tweaks-and-overrides" + + + doctitlees = "Estilos de silencios" + texidoces = " +Los silencios se pueden imprimir en distintos estilos. +" + + + doctitlede = "Pausenstile" + texidocde = " +Pausen können in verschiedenen Stilen dargestellt werden. +" + + + doctitle = "Rest styles" + texidoc = " +Rests may be used in various styles. +" +} % begin verbatim +\layout { + indent = 0.0 + \context { + \Staff + \remove "Time_signature_engraver" + } +} + +\relative c { + \set Score.timing = ##f + \override Staff.Rest #'style = #'mensural + r\maxima^\markup \typewriter { mensural } + r\longa r\breve r1 r2 r4 r8 r16 + \bar "" + + \override Staff.Rest #'style = #'neomensural + r\maxima^\markup \typewriter { neomensural } + r\longa r\breve r1 r2 r4 r8 r16 + \bar "" + + \override Staff.Rest #'style = #'classical + r\maxima^\markup \typewriter { classical } + r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 + \bar "" + + \override Staff.Rest #'style = #'default + r\maxima^\markup \typewriter { default } + r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 +} diff --git a/input/new/revised/snap-pizzicato-markup-bartok-pizzicato.ly b/input/new/revised/snap-pizzicato-markup-bartok-pizzicato.ly new file mode 100644 index 0000000000..1d3cc78b5d --- /dev/null +++ b/input/new/revised/snap-pizzicato-markup-bartok-pizzicato.ly @@ -0,0 +1,69 @@ +%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it +%% This file is in the public domain. + +\version "2.11.62" + +\header { + lsrtags = "expressive-marks, unfretted-strings" + + + doctitlees = "Marca de pizzicato de chasquido (@q{pizzicato de Bartók})" + texidoces = " +El pizzicato de chasquido (también llamado @q{Pizzicato de Bartók}) es un +@q{pizzicato fuerte en que la cuerda se pulsa verticalmente produciendo un +chasquido y rebotando en el diapasón del instrumento} (Wikipedia). Se +denota mediante una circunferencia con una línea vertical corta que parte +del centro de aquélla hacia fuera. Aunque Lilypond no tiene ninguna +instrucción predefinida para crear esta marca, es fácil hacer la definición +y colocarla directamente en el archivo de lilypond. +" + + + doctitlede = "Bartók-Pizzicato" + texidocde = " +Das Bartók-Pizzicato @q{ist eine besondere Form des Pizzicato, bei dem der +Spieler die Saite auf das Griffbrett aufschlagen lässt, sodass zusätzlich +zum angeschlagenen Ton ein scharfes, knallendes Geräusch ertönt} +(Wikipedia). Es wird dargestellt als kleiner Kreis mit einer vertikalen +Linie, die vom Kreiszentrum aus nach oben weist und ein Stück außerhalb des +Kreises endet. Lilypond hat keinen eigenen Glyphen für dieses Symbol; es +ist aber einfach, direkt eine Definition in die Eingabedatei einzufügen. +" + + + doctitle = "Snap-pizzicato markup (@q{Bartók pizzicato})" + texidoc = " +A snap-pizzicato (also known as @q{Bartók pizzicato}) is a @q{strong +pizzicato where the string is plucked vertically by snapping and rebounds +off the fingerboard of the instrument} (Wikipedia). It is denoted by a +cicle with a vertical line going from the center upwards outside the circle. +While Lilypond does not have a pre-defined command to created this markup, +it is easy to create a definition and place it directly into the lilypond +file. +" +} % begin verbatim + +% Definition of the snappizz markup to print snap-pizzicato articulations. +% These are also known as "Bartok pizzicato" and are denotes by a circle +% with a vertical line from the center of the circle upwards: +#(define-markup-command (snappizz layout props) () + (interpret-markup layout props + (markup #:stencil + (ly:stencil-translate-axis + (ly:stencil-add + (make-circle-stencil 0.7 0.1 #f) + (ly:make-stencil + (list 'draw-line 0.1 0 0.1 0 1) + '(-0.1 . 0.1) '(0.1 . 1))) + 0.7 X)))) +snappizzicato = \markup \snappizz + +% now it can be used as \snappizzicato after the note/chord +% Note, that a direction (-, ^ or _) is REQUIRED! +\relative c'{ + c4^\snappizzicato +% < c e g>\snappizzicato % This does NOT work + < c' e g>-\snappizzicato + < c' e g>^\snappizzicato + < c, e g>_\snappizzicato +} diff --git a/input/new/revised/tweaking-clef-properties.ly b/input/new/revised/tweaking-clef-properties.ly new file mode 100644 index 0000000000..0416d1e8c6 --- /dev/null +++ b/input/new/revised/tweaking-clef-properties.ly @@ -0,0 +1,152 @@ +%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it +%% This file is in the public domain. + +\version "2.11.62" + +\header { + lsrtags = "pitches, staff-notation, tweaks-and-overrides" + + + doctitlees = "Trucaje de las propiedades de clave" + texidoces = " +La instrucción @code{\\clef \"treble_8\"} equivale a un ajuste de +@code{clefGlyph}, @code{clefPosition} (que controla la posición vertical de +la clave), @code{middleCPosition} y @code{clefOctavation}. Se imprime una +clave cada vez que se modifica cualquiera de las propiedades excepto +@code{middleCPosition}. + +Observe que la modificación del glifo, la posición de la clave o su +octavación, no cambian 'per se' la posición de las siguientes notas del +pentagrama: para hacer esto también se debe especificar la posición del Do +central. Los parámetros posicionales están en relación con la tercera línea +del pentagrama, los números positivos desplazan hacia arriba, contando una +unidad por cada línea y espacio. El valor de @code{clefOctavation} se +establecería normalmente a 7, -7, 15 or -15, pero son válidos otros valores. + +Cuando se produce un cambio de clave en el salto de línea se imprime la +clave nueva tanto al final de la línea anterior como al principio de la +nueva, de forma predeterminada. Si no se necesita la clave de advertencia +al final de la línea anterior, se puede quitar estableciendo el valor de la +propiedad @code{explicitClefVisibility} de @code{Staff}, a +@code{end-of-line-invisible}. El comportamiento predeterminado se puede +recuperar con @code{\\unset Staff.explicitClefVisibility}. + +Los siguientes ejemplos muestran las posibilidades cuando se ajustan estas +propiedades manualmente. En la primera línea, los cambios manuales +preservan el posicionamiento relativo estándar de las claves y las notas, +pero no lo hacen en la segunda línea. +" + + + doctitlede = "Eigenschaften des Schlüssels optimieren" + texidocde = " +Der Befehl @code{\\clef \"treble_8\"} ist gleichbedeutend mit einem +expliziten Setzen der Eigenschaften von @code{clefGlyph}, +@code{clefPosition} (welche die vertikale Position des Schlüssels bestimmt), +@code{middleCPosition} und @code{clefOctavation}. Ein Schlüssel wird +ausgegeben, wenn eine der Eigenschaften außer @code{middleCPosition} sich +ändert. + +Eine Änderung des Schriftzeichens (Glyph), der Schlüsselposition oder der +Oktavierung selber ändert noch nicht die Position der darauf folgenden Noten +auf dem System: das geschieht nur, wenn auch die Position des +eingestrichenen@tie{}C (middleCPosition) angegeben wird. Die +Positionsparameter sind relativ zur Mittellinie des Systems, dabei versetzen +positive Zahlen die Position nach oben, jeweils eine Zahl für jede Linie +plus Zwischenraum. Der @code{clefOctavation}-Wert ist normalerweise auf 7, +-7, 15 oder -15 gesetzt, aber auch andere Werte sind gültig. + +Wenn ein Schlüsselwechsel an einem Zeilenwechsel geschieht, wird das neue +Symbol sowohl am Ende der alten Zeilen als auch am Anfang der neuen Zeile +ausgegeben. Wenn der Warnungs-Schlüssel am Ende der alten Zeile nicht +erforderlich ist, kann er unterdrückt werden, indem die +@code{explicitClefVisibility}-Eigenschaft des @code{Staff}-Kontextes auf den +Wert @code{end-of-line-invisible} gesetzt wird. Das Standardverhalten kann +mit @code{\\unset Staff.explicitClefVisibility} wieder hergestellt werden. + +Die folgenden Beispiele zeigen die Möglichkeiten, wenn man diese +Eigenschaften manuell setzt. Auf der ersten Zeile erhalten die manuellen +Änderungen die ursprüngliche relative Positionierung von Schlüssel und +Noten, auf der zweiten Zeile nicht. +" + + + doctitle = "Tweaking clef properties" + texidoc = " +The command @code{\\clef \"treble_8\"} is equivalent to setting +@code{clefGlyph}, @code{clefPosition} (which controls the vertical position +of the clef), @code{middleCPosition} and @code{clefOctavation}. A clef is +printed when any of the properties except @code{middleCPosition} are +changed. + +Note that changing the glyph, the position of the clef, or the octavation +does not in itself change the position of subsequent notes on the staff: the +position of middle@tie{}C must also be specified to do this. The positional +parameters are relative to the staff center line, positive numbers +displacing upwards, counting one for each line and space. The +@code{clefOctavation} value would normally be set to 7, -7, 15 or -15, but +other values are valid also. + +If a clef change takes place at a line break the new clef symbol is printed +at both the end of the previous line and the beginning of the new line by +default. If the warning clef at the end of the previous line is not +required it can be suppressed by setting the @code{Staff} property +@code{explicitClefVisibility} to the value @code{end-of-line-invisible}. +The default behavior can be recovered with @code{\\unset +Staff.explicitClefVisibility}. + +The following examples show the possibilities when setting these properties +manually. On the first line, the manual changes preserve the standard +relative positioning of clefs and notes, whereas on the second line, they do +not. +" +} % begin verbatim + +\layout { ragged-right = ##t } + +{ + % The default treble clef + c'1 + % The standard bass clef + \set Staff.clefGlyph = #"clefs.F" + \set Staff.clefPosition = #2 + \set Staff.middleCPosition = #6 + c'1 + % The baritone clef + \set Staff.clefGlyph = #"clefs.C" + \set Staff.clefPosition = #4 + \set Staff.middleCPosition = #4 + c'1 + % The standard choral tenor clef + \set Staff.clefGlyph = #"clefs.G" + \set Staff.clefPosition = #-2 + \set Staff.clefOctavation = #-7 + \set Staff.middleCPosition = #1 + c'1 + % A non-standard clef + \set Staff.clefPosition = #0 + \set Staff.clefOctavation = #0 + \set Staff.middleCPosition = #-4 + c'1 \break + + % The following clef changes do not preserve + % the normal relationship between notes and clefs: + + \set Staff.clefGlyph = #"clefs.F" + \set Staff.clefPosition = #2 + c'1 + \set Staff.clefGlyph = #"clefs.G" + c'1 + \set Staff.clefGlyph = #"clefs.C" + c'1 + \set Staff.clefOctavation = #7 + c'1 + \set Staff.clefOctavation = #0 + \set Staff.clefPosition = #0 + c'1 + + % Here we go back to the normal clef: + + \set Staff.middleCPosition = #0 + c'1 +} -- 2.39.2