[Anfang][Inhalt][Index][ ? ] |
GNU LilyPond — Notation Reference
Das Notensatzprogramm
Dieses Dokument ist auch als PDF und als separate HTML-Seiten mit Index verfügbar.
Diese Datei dokumentiert GNU LilyPond.
Copyright 1999–2009 bei den Autoren.
The translation of the following copyright notice is provided for courtesy to non-English speakers, but only the notice in English legally counts.
Die Übersetzung der folgenden Lizenzanmerkung ist zur Orientierung für Leser, die nicht Englisch sprechen. Im rechtlichen Sinne ist aber nur die englische Version gültig.
Es ist erlaubt, dieses Dokument unter den Bedingungen der GNU Free Documentation Lizenz (Version 1.1 oder spätere, von der Free Software Foundation publizierte Versionen, ohne Invariante Abschnitte), zu kopieren, verbreiten und/oder zu verändern. Eie Kopie der Lizenz ist im Abschnitt “GNU Free Documentation License” angefügt.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections. A copy of the license is included in the section entitled “GNU Free Documentation License”.
Das ist das Benutzerhandbuch für GNU LilyPond Version 2.12.3. Für einen Überblick über die gesamte Dokumentation von LilyPond und die Intention dieses Handbuchs siehe About the documentation.
Mehr Information unter http://www.lilypond.org/. Auf der Internetseite finden sich Kopien dieser und anderer Dokumentationsdateien.
Wir wollen dieses Programm allen Freunden widmen, die wir durch die Musik kennengelernt haben.
Han-Wen und Jan
1. Musical notation | Allgemeine Notation von Musik. | |
2. Specialist notation | Notation, die nur für spezielle Zwecke eingesetzt wird. | |
3. General input and output | Allgemeine Information über die Quelldateien von LilyPond. | |
4. Spacing issues | Anzeige der Ausgabe auf dem Papier. | |
5. Changing defaults | Das Notenbild verfeinern. | |
6. Interfaces for programmers | Benutzung für Experten. | |
Anhänge | ||
---|---|---|
A. Literature list | Wichtige Literatur über die Notation. | |
B. Notation manual tables | Tabellen und Grafiken. | |
C. Cheat sheet | Überblick über die LilyPond-Syntax. | |
D. GNU Free Documentation License | Die Lizenz dieses Handbuchs. | |
E. LilyPond command index | ||
F. LilyPond index |
[ << Top ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Top ] | [ Nach oben : Top ] | [ Pitches > ] |
1. Musical notation
Dieses Kapitel erklärt, wie die Notation von Musik erstellt wird.
1.1 Pitches | Tonhöhen von Noten notieren und darstellen. | |
1.2 Rhythms | Tondauern von Noten notieren und darstellen. | |
1.3 Expressive marks | Vortragsbezeichnungen zu Noten hinzufügen. | |
1.4 Repeats | Noten wiederholen. | |
1.5 Simultaneous notes | Mehr als eine Note gleichzeitig. | |
1.6 Staff notation | Notensysteme darstellen. | |
1.7 Editorial annotations | Besondere Notation, um die Lesbarkeit zu verbessern. | |
1.8 Text | Text zur Partitur hinzufügen. |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Musical notation ] | [ Nach oben : Musical notation ] | [ Writing pitches > ] |
1.1 Pitches
Dieser Abschnitt zeigt, wie man die Tonhöhe notieren kann. Es gibt drei Stufen in diesem Prozess: Eingabe, Veränderung und Ausgabe.
1.1.1 Writing pitches | ||
1.1.2 Changing multiple pitches | ||
1.1.3 Displaying pitches | ||
1.1.4 Note heads |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Pitches ] | [ Nach oben : Pitches ] | [ Absolute octave entry > ] |
1.1.1 Writing pitches
Dieser Abschnitt zeigt, wie man Tonhöhen notiert. Es gibt zwei verschiedene Möglichkeiten, Noten in bestimmten Oktaven zu notieren: den absoluten und den relativen Modus. In den meisten Fällen eignet sich der relative Modus besser.
Absolute octave entry | ||
Relative octave entry | ||
Accidentals | ||
Note names in other languages |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Writing pitches ] | [ Nach oben : Writing pitches ] | [ Relative octave entry > ] |
Absolute octave entry
Tonhöhenbezeichnungen werden durch Kleinbuchstaben
von a
bis g
angegeben. Dabei
wird ein aus dem Englischen entlehntes Modell benutzt, das sich
vom Deutschen dadurch unterscheidet, dass b
für die Note „H“ steht. Die Benutzung deutscher
Notenbezeichnungen mit der Unterscheidung von b und h ist
auch möglich, siehe Note names in other languages.
Die Notenbezeichnungen c
bis b
werden in der Oktave unter dem zweigestrichenen C
gesetzt.
\clef bass c d e f g a b c d e f g
Andere Oktaven können erreicht werden, indem man ein
Apostroph ('
) oder ein Komma (,
)
benutzt. Jedes '
erhöht die Tonhöhe um
eine Oktave, jedes ,
erniedrigt sie um eine
Oktave.
\clef treble c' c'' e' g d'' d' d c \clef bass c, c,, e, g d,, d, d c
See also
Glossar: Pitch names.
Schnipsel: Pitches.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Absolute octave entry ] | [ Nach oben : Writing pitches ] | [ Accidentals > ] |
Relative octave entry
Wenn Oktaven im absoluten Modus notiert, passiert es schnell, eine Note auf der falschen Oktave zu notieren. Mit dem relativen Modus kommen solche Fehler seltener vor, weil man die Oktave nur noch sehr selten spezifizieren muss. Hinzu kommt, dass im absoluten Modus ein einzelner Fehler schwer zu finden ist, während er im relativen Modus den ganzen Rest des Stückes um eine Oktave verschiebt.
\relative Anfangstonhöhe musikalischer Ausdruck
Im relativen Modus wird angenommen, dass sich jede folgende Note so dicht wie möglich bei der nächsten befindet. Das bedeutet, dass die Oktave jeder Tonhöhe innerhalb eines musikalischen Ausdrucks wie folgt errechnet wird:
- Wenn kein Oktavänderungszeichen an einer Tonhöhe benutzt wird, wird ihre Oktave so errechnet, dass das Intervall zur vorigen Noten weniger als eine Quinte ist. Das Intervall wird errechnet, ohne Versetzungszeichen zu berücksichtigen.
-
Ein Oktavänderungszeichen
'
oder,
kann hinzugefügt werden, um eine Tonhöhe explizit um eine Oktave zu erhöhen bzw. zu erniedrigen, relativ zu der Tonhöhe, die ohne das Oktavänderungszeichen errechnet wurde. -
Mehrfache Oktavänderungszeichen können benutzt werden. Die
Zeichen
''
und,,
ändern zum Beispiel die Tonhöhe um zwei Oktaven. -
Die Tonhöhe der ersten Note ist relativ zu
Anfangstonhöhe
. Die Anfangstonhöhe wird im absoluten Modus gesetzt, und als Empfehlung gilt, eine Oktave von C zu nehmen.
So funktioniert der relative Modus:
\relative c { \clef bass c d e f g a b c d e f g }
Oktavversetzungen müssen für alle Intervalle angezeigt werden, die größer als eine Quarte sind.
\relative c'' { c g c f, c' a, e'' c }
Eine Sequenz ohne ein einziges Oktavänderungszeichen kann aber trotzdem weite Intervalle umfassen:
\relative c { c f b e a d g c }
Wenn der vorherige Ausdruck ein Akkord ist, wird die erste Note
des Akkordes benutzt, um die erste Note des nächsten Akkordes zu
bestimmen. Innerhalb von Akkorden ist die nächste Note immer
relativ zur vorherigen. Betrachten Sie das folgende Beispiel
aufmerksam, insbesondere die c
-Noten.
\relative c' { c <c e g> <c' e g'> <c, e, g''> }
Wie oben erklärt wurde, wird die Oktave einer Tonhöhe nur
nach ihrer Notenbezeichnung errechnet, unabhängig von allen
Versetzungszeichen. Darum wird ein Eisis auf ein H (notiert als b
)
folgend höher gesetzt, während ein Feses tiefer gesetzt wird.
Anders gesagt wird eine doppelterhöhte Quarte wird als
kleineres Intervall angesehen als eine doppelterniedrigte
Quinte, unabhängig von der Anzahl an Halbtönen, die jedes
Intervall enthält.
\relative c'' { c2 fis c2 ges b2 eisis b2 feses }
See also
Musickgossar: fifth, interval, Pitch names.
Notationsreferenz: Octave checks.
Schnipsel: Pitches.
Referenz der Interna: RelativeOctaveMusic.
Known issues and warnings
Die relative Veränderung wirkt sich nicht auf
Transposition (\transpose
),
Akkordnotation (\chordmode
) oder \relative
-Abschnitte
aus. Um den relativen Modus innerhalb von transponierter Musik zu
verwenden, muss ein zusätzliches \relative
innerhalb der
Klammern des \transpose
-Befehls gesetzt werden.
Wenn keine Anfangstonhöhe für \relative
angegeben
wird, wird c'
angenommen. Das ist aber eine
veraltete Option, die in späteren Programmversionen verschwinden kann.
Darum wird von der Benutzung abgeraten.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Relative octave entry ] | [ Nach oben : Writing pitches ] | [ Note names in other languages > ] |
Accidentals
Achtung: Neue Benutzer sind manchmal verwirrt, wie
Versetzungszeichen und Vorzeichen/Tonarten funktionieren.
In LilyPond sind Notenbezeichnungen die wirkliche
Tonhöhe, erst durch Vorzeichen wird bestimmt, wie diese
Tonhöhe dann im Notenbild dargestellt wird. Eine
einfache Tonhöhe wie etwa |
Ein Kreuz wird eingegeben, indem man -is
an die
Notenbezeichnung hängt, ein b durch -es
. Doppelkreuze
und Doppel-Bs werden durch Hinzufügen von -isis
und
-eses
hinter die Notenbezeichnung erzeugt. Diese
Syntax leitet sich von den holländischen Notenbezeichnungen
ab. Um andere Bezeichnungen für Versetzungszeichen zu
benutzung, siehe Note names in other languages.
ais1 aes aisis aeses
Auch die deutschen Varianten as
für aes
und
es
für ees
sind erlaubt. Im Unterschied zum
Deutschen ist aber bes
die einzige Version für den Ton
B, während his als bis
geschrieben werden muss. Das kann
aber auch verändert werden, siehe Note names in other languages.
a4 aes a2
Ein Auflösungszeichen macht die Wirkung eines Kreuzes oder Bs rückgängig. Diese Auflösungszeichen werden jedoch nicht als Suffix einer Tonhöhenbezeichnung eingegeben, sondern sie ergeben sich (automatisch) aus dem Kontext, wenn die nicht alterierte Notenbezeichnung eingegeben wird.
a4 aes a2
Versetzungszeichen für Vierteltöne werden durch Anhängen der Endungen
-eh
(Erniedrigung) und -ih
(Erhöhung) an den
Tonhöhenbuchstaben erstellt. Das Beispiel zeigt eine in Vierteltönen
aufsteigende Serie vom eingestrichenen C.
ceseh1 ces ceh c cih cis cisih
Normalerweise werden Versetzungszeichen automatisch gesetzt, aber
sie können auch manuell hinzugefügt werden. Ein erinnerndes
Versetzungszeichen kann erzwungen werden, indem man ein Ausrufungszeichen
(!
) hinter die Notenbezeichnung schreibt. Ein warnendes
Versetzungszeichen (also ein Vorzeichen in Klammern) wird durch Anfügen
eines Fragezeichens (?
) erstellt. Mit diesen zusätzlichen
Zeichen kann man sich auch Auflösungszeichen ausgeben lassen.
cis cis cis! cis? c c? c! c
Versetzungzeichen von übergebundenen Noten werden nur dann gesetzt, wenn ein neues System begonnen wird:
cis1 ~ cis ~ \break cis
Selected Snippets
Verhindern, dass zusätzliche Auflösungszeichen automatisch hinzugefügt werden
Den tranditionellen Notensatzregeln zufolge wird ein
Auflösungszeichen immer dann vor einem Kreuz oder B gesetzt, wenn
ein vorheriges Versetzungszeichen der gleichen Note aufgehoben werden
soll. Um dieses Verhalten zu ändern, muss die Eigenschaft
extraNatural
im Staff
-Kontext auf "false" gesetzt werden.
\relative c'' { aeses4 aes ais a \set Staff.extraNatural = ##f aeses4 aes ais a }
Makam example
Makam is a type of melody from Turkey using 1/9th-tone microtonal alterations. Consult the initialization file ‘ly/makam.ly’ for details of pitch names and alterations.
% Initialize makam settings \include "makam.ly" \relative c' { \set Staff.keySignature = #`((3 . ,BAKIYE) (6 . ,(- KOMA))) c4 cc db fk gbm4 gfc gfb efk fk4 db cc c }
See also
Glossar: sharp, flat, double sharp, double flat, Pitch names, quarter tone.
Handbuch zum Lernen: Accidentals and key signatures.
Notationsreferenz: Automatic accidentals, Annotational accidentals, Note names in other languages.
Schnipsel: Pitches.
Referenz der Interna: Accidental_engraver, Accidental, AccidentalCautionary, accidental-interface.
Known issues and warnings
Es gibt keine allgemeinen Regeln für die Notation von Vierteltönen, die Symbole von LilyPond folgen also keinem Standard.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Accidentals ] | [ Nach oben : Writing pitches ] | [ Changing multiple pitches > ] |
Note names in other languages
Es gibt vordefinierte Bezeichnungen für die Notenbezeichnungen in anderen
Sprachen als Englisch. Um sie zu benutzen, muss nur die
entsprechende Datei für die jeweilige Sprache eingefügt werden.
Zum Beispiel fügt man mit \include "deutsch.ly"
die
Notendefinitionen für die deutsche Sprache am Anfang der Datei
hinzu. In der Tabelle sind die existierenden Sprachdefinitionen
mit den dazugehörigen Notenbezeichnungen dargestellt
Sprachdatei
Notenbezeichnung
‘nederlands.ly’
c d e f g a bes b
‘arabic.ly’
do re mi fa sol la sib si
‘catalan.ly’
do re mi fa sol la sib si
‘deutsch.ly’
c d e f g a b h
‘english.ly’
c d e f g a bf b
‘espanol.ly’
do re mi fa sol la sib si
‘italiano.ly’
do re mi fa sol la sib si
‘norsk.ly’
c d e f g a b h
‘portugues.ly’
do re mi fa sol la sib si
‘suomi.ly’
c d e f g a b h
‘svenska.ly’
c d e f g a b h
‘vlaams.ly’
do re mi fa sol la sib si
und die dazugehörigen Versetzungszeichen-Endungen:
Sprachdatei
Kreuz
B
Doppelkreuz
Doppel-B
‘nederlands.ly’
-is
-es
-isis
-eses
‘arabic.ly’
-d
-b
-dd
-bb
‘catalan.ly’
-d/-s
-b
-dd/-ss
-bb
‘deutsch.ly’
-is
-es
-isis
-eses
‘english.ly’
-s/-sharp
-f/-flat
-ss/-x/-sharpsharp
-ff/-flatflat
‘espanol.ly’
-s
-b
-ss
-bb
‘italiano.ly’
-d
-b
-dd
-bb
‘norsk.ly’
-iss/-is
-ess/-es
-ississ/-isis
-essess/-eses
‘portugues.ly’
-s
-b
-ss
-bb
‘suomi.ly’
-is
-es
-isis
-eses
‘svenska.ly’
-iss
-ess
-ississ
-essess
‘vlaams.ly’
-k
-b
-kk
-bb
Auf Holländisch, Deutsch, Norwegisch und Schwedisch (u. a.) werden die
Erniedrigungen von ‚a‘ wie aes
und aeses
zu
as
und ases
(oder auch asas
) zusammengezogen.
In manchen Sprachen sind nur diese Kurzformen definiert.
a2 as e es a ases e eses
Bestimmte Musik verwendet Alterationen, die Bruchteile von den „normalen“ Kreuzen oder Bs sind. Die Notenbezeichnungen für Vierteltöne für die verschiedenen Sprachen sind in der folgenden Tabelle aufgeführt. Die Präfixe „Semi-“ und „Sesqui-“ bedeuten „halb“ bzw. „eineinhalb“. Für alle anderen Sprachen sind noch keine eigenen Namen definiert.
Sprachdatei
Vierteltonkreuz
Viertelton-B
3/4-tonkreuz
3/4-ton-B
‘nederlands.ly’
-ih
-eh
-isih
-eseh
‘arabic.ly’
-sd
-sb
-dsd
-bsb
‘deutsch.ly’
-ih
-eh
-isih
-eseh
‘english.ly’
-qs
-qf
-tqs
-tqf
‘italiano.ly’
-sd
-sb
-dsd
-bsb
‘portugues.ly’
-sqt
-bqt
-stqt
-btqt
See also
Glossar: Pitch names.
Schnipsel: Pitches.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Note names in other languages ] | [ Nach oben : Pitches ] | [ Octave checks > ] |
1.1.2 Changing multiple pitches
Dieser Abschnitt zeigt, wie man Tonhöhen beeinflusst.
Octave checks | ||
Transpose |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Changing multiple pitches ] | [ Nach oben : Changing multiple pitches ] | [ Transpose > ] |
Octave checks
Im relativen Modus geschieht es recht häufig, dass ein Oktavänderungszeichen vergessen wird. Oktavenüberprüfungen machen es einfacher, solche Fehler zu entdecken und zu korrigieren. Sie geben eine Warnung aus und korrigieren die Oktave, wenn eine Note in einer unerwarteten Oktave gefunden wird.
Um die Oktave einer Note zu überprfüfen, muss die absolute
Oktave nach dem =
-Symbol angegeben werden. Im
folgenden Beispiel wird eine Warnung (und eine Tonhöhenänderung)
generiert, weil die zweite Note als absolute Oktave
ein d''
anstelle von d'
notiert ist,
wie es die Oktavierungskorrektur markiert.
\relative c'' { c2 d='4 d e2 f }
Die Oktave von einer Note kann auch mit dem
\octaveCheck
Kontrolltonhöhe-Befehl
überprüft werden. Kontrollhöhe wird im absoluten
Modus eingegeben. Dabei wird überprüft, ob das
Intervall zwischen der vorherigen Note und der
Kontrolltonhöhe nicht größer als eine Quarte ist
(die normale Berechnung im relativen Modus). Wenn diese
Überprüfung einen Fehler ausgibt, wird eine Warnung
gemeldet, aber die vorigen Note wird nicht verändert.
Folgende Noten sind dann relativ zur Kontrolltonhöhe.
\relative c'' { c2 d \octaveCheck c' e2 f }
Vergleichen Sie die zwei Takte im nächsten Beispiel. Die
erste und dritte \octaveCheck
-Überprüfung gibt
einen Fehler aus, die zweite dagegen ist erfolgreich:
\relative c'' { c4 f g f c4 \octaveCheck c' f \octaveCheck c' g \octaveCheck c' f }
See also
Schnipsel: Pitches.
Referenz der Interna: RelativeOctaveCheck.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Octave checks ] | [ Nach oben : Changing multiple pitches ] | [ Displaying pitches > ] |
Transpose
Ein musikalischer Ausdruck kann mit dem Befehl \transpose
transponiert werden. Die Syntax lautet:
\transpose vonTonhöhe nachTonhöhe mus. Ausdruck
Das bedeutet, dass der mus. Ausdruck um das Intervall zwischen den Tonhöhen vonTonhöhe und nachTonhöhe transponiert wird: Jede Note, die die Tonhöhe vonTonhöhe hat, wird in die Tonhöhe nachTonhöhe umgewandelt, und alle anderen Noten um das gleiche Intervall. Beide Tonhöhen werden im absoluten Modus eingegeben.
So kann z. B. ein Stück in D-Dur, wenn es für den Sänger etwas zu tief ist, nach E-Dur transponiert werden. Dabei werden auch die Vorzeichen entsprechend angepasst:
\transpose d e { \relative c' { \key d \major d4 fis a d } }
Wenn eine Stimme, die in C notiert ist, von einer A-Klarinette gespielt werden soll (für die A als C notiert wird, aber eine kleine Terz tiefer erklingt als es notiert ist), kann die entpsrechende Stimme wie folgt erstellt werden:
\transpose a c' { \relative c' { \key c \major c4 d e g } }
Beachten Sie, dass \key c \major
explizit
angegeben werden muss. Wenn hier keine Tonart angemerkt
würde, würde die Noten zwar transponiert, aber keine
Vorzeichen angezeigt werden.
\transpose
unterscheidet enharmonische Verwechslungen: sowohl
\transpose c cis
als auch \transpose c des
transponieren
die Musik einen Halbton nach oben. Aber die erste Version gibt als
Versetzungszeichen Kreuze aus, die zweite dagegen B-Versetzungszeichen.
music = \relative c' { c d e f } \new Staff { \transpose c cis { \music } \transpose c des { \music } }
\transpose
kann auch benutzt werden, um die geschriebenen
Noten eines transponierenden Instruments zu notieren. Im vorigen Beispiel wurde die Tonhöhen so eingegeben,
wie sie erklingen (also in C), aber man kann genauso
gut auch andersherum aus einer Stimme, die für ein
transponierendes Instrument in einem anderen Ton als
C geschrieben wurde, eine Partitur in C erstellen.
Die Noten einer B-Trompete, die mit einem notierten E
(also einem klingenden D) anfangen, könnte man also
auch so eingeben:
musicInBflat = { e4 … } \transpose c bes, \musicInBflat
Um die Noten dann in F zu setzen (um sie etwa für ein
Horn zu arrangieren), könnte man die schon geschriebenen
Noten wieder mit einem weiteren \transpose
umgeben:
musicInBflat = { e4 … } \transpose f c' { \transpose c bes, \musicInBflat }
Für mehr Information zu transponierenden Instrumenten siehe auch Instrument transpositions.
Selected Snippets
Noten mit minimaler Anzahl an Versetzungszeichen transponieren.
Dieses Beispiel benutzt Scheme-Code, um enharmonische Verwechslungen für Noten zu erzwingen, damit nur eine minimale Anzahl an Versetzungszeichen ausgegeben wird. In diesem Fall gelten die folgenden Regeln:
- Doppelte Versetzungszeichen sollen entfernt werden
- His -> C
- Eis -> F
- Ces -> B
- Fes -> E
Auf diese Art werden am meisten natürliche Tonhöhen als enharmonische Variante gewählt.
#(define (naturalize-pitch p) (let ((o (ly:pitch-octave p)) (a (* 4 (ly:pitch-alteration p))) ;; alteration, a, in quarter tone steps, ;; for historical reasons (n (ly:pitch-notename p))) (cond ((and (> a 1) (or (eq? n 6) (eq? n 2))) (set! a (- a 2)) (set! n (+ n 1))) ((and (< a -1) (or (eq? n 0) (eq? n 3))) (set! a (+ a 2)) (set! n (- n 1)))) (cond ((> a 2) (set! a (- a 4)) (set! n (+ n 1))) ((< a -2) (set! a (+ a 4)) (set! n (- n 1)))) (if (< n 0) (begin (set! o (- o 1)) (set! n (+ n 7)))) (if (> n 6) (begin (set! o (+ o 1)) (set! n (- n 7)))) (ly:make-pitch o n (/ a 4)))) #(define (naturalize music) (let ((es (ly:music-property music 'elements)) (e (ly:music-property music 'element)) (p (ly:music-property music 'pitch))) (if (pair? es) (ly:music-set-property! music 'elements (map (lambda (x) (naturalize x)) es))) (if (ly:music? e) (ly:music-set-property! music 'element (naturalize e))) (if (ly:pitch? p) (begin (set! p (naturalize-pitch p)) (ly:music-set-property! music 'pitch p))) music)) naturalizeMusic = #(define-music-function (parser location m) (ly:music?) (naturalize m)) music = \relative c' { c4 d e g } \score { \new Staff { \transpose c ais { \music } \naturalizeMusic \transpose c ais { \music } \transpose c deses { \music } \naturalizeMusic \transpose c deses { \music } } \layout { } }
See also
Notationsreferenz: Instrument transpositions.
Schnipsel: Pitches.
Referenz der Interna: TransposedMusic.
Known issues and warnings
Der relative Modus wirkt nicht in \transpose
,
\chordmode
oder \relative
.
Um auch im relativen Modus transponieren
zu können, muss ein \relative
innerhalb des
\tranpose
zusätzlich gesetzt werden.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Transpose ] | [ Nach oben : Pitches ] | [ Clef > ] |
1.1.3 Displaying pitches
Dieser Abschnitt zeigt, wie die Ausgabe von Tonhöhen verändern werden kann.
Clef | ||
Key signature | ||
Ottava brackets | ||
Instrument transpositions | ||
Automatic accidentals | ||
Ambitus |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Displaying pitches ] | [ Nach oben : Displaying pitches ] | [ Key signature > ] |
Clef
Der Schlüssel kann verändert werden. Das eingestrichene C wird in jedem Beispiel gezeigt:
\clef treble c2 c \clef alto c2 c \clef tenor c2 c \clef bass c2 c
Andere Schlüssel sind u. A.:
\clef french c2 c \clef soprano c2 c \clef mezzosoprano c2 c \clef baritone c2 c \break \clef varbaritone c2 c \clef subbass c2 c \clef percussion c2 c \clef tab c2 c
Weitere unterstützte Schlüssel sind beschrieben in Ancient clefs.
Indem _8
oder ^8
an die jeweilige Schlüsselbezeichnung
angehängt wird, wird der Schlüssel um eine Oktave nach oben oder unten
transponiert, mit _15
oder ^15
um zwei Oktaven.
Die Schlüsselbezeichnung muss in Anführungszeichen gesetzt werden,
wenn sie Unterstriche oder Zahlen enthält, siehe Beispiel:
\clef treble c2 c \clef "treble_8" c2 c \clef "bass^15" c2 c
Selected Snippets
Eigenschaften des Schlüssels optimieren
Der Befehl \clef "treble_8"
ist gleichbedeutend mit einem
expliziten Setzen der Eigenschaften von clefGlyph
,
clefPosition
(welche die vertikale Position des Schlüssels bestimmt),
middleCPosition
und clefOctavation
. Ein Schlüssel wird
ausgegeben, wenn eine der Eigenschaften außer 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 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 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
explicitClefVisibility
-Eigenschaft des Staff
-Kontextes auf den
Wert end-of-line-invisible
gesetzt wird. Das Standardverhalten kann
mit \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.
\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 % Return to the normal clef: \set Staff.middleCPosition = #0 c'1 }
See also
Notationsreferenz: Ancient clefs.
Schnipsel: Pitches.
Referenz der Interna: Clef_engraver, Clef, OctavateEight, clef-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Clef ] | [ Nach oben : Displaying pitches ] | [ Ottava brackets > ] |
Key signature
Achtung: Neue Benutzer sind manchmal verwirrt, wie
Versetzungszeichen und Vorzeichen/Tonarten funktionieren.
In LilyPond sind Notenbezeichnungen die wirkliche
Tonhöhe, erst durch Vorzeichen wird bestimmt, wie diese
Tonhöhe dann im Notenbild dargestellt wird. Eine
einfache Tonhöhe wie etwa |
Die Vorzeichen zeigen die Tonart an, in welcher ein Stück notiert ist. Es handelt sich um eine Anzahl von Alterationszeichen (Kreuzen oder Bs) am Beginn jedes Notensystems.
Die Tonart kann geändert werden:
\key
Tonhöhe Modus
Der Wert Modus sollte entweder \major
oder \minor
sein, um Moll oder Dur der Tonhöhe zu erhalten. Es können auch
Modusbezeichnungen für Kirchentonarten verwendet werden: \ionian
(Ionisch), \locrian
(Locrisch), \aeolian
(Aeolisch),
\mixolydian
(Mixolydisch), \lydian
(Lydisch),
\phrygian
(Phrygisch) und \dorian
(Dorisch).
\key g \major fis1 f fis
Selected Snippets
Auflösungzeichen nicht setzen, wenn die Tonart wechselt
Wenn die Tonart wechselt, werden automatisch Auflösungszeichen ausgegeben,
um Versetzungszeichen der vorherigen Tonart aufzulösen. Das kann
verhindert werden, indem die printKeyCancellation
-Eigenschaft
im Staff
-Kontext auf "false" gesetzt wird.
\relative c' { \key d \major a4 b cis d \key g \minor a4 bes c d \set Staff.printKeyCancellation = ##f \key d \major a4 b cis d \key g \minor a4 bes c d }
Untypische Tonarten
Der üblicherweise benutzte \key
-Befehl setzt die
keySignature
-Eigenschaft im Staff
-Kontext.
Um untypische Tonartenvorzeichen zu erstellen, muss man diese Eigenschaft
direkt setzen. Das Format für den Befehl ist eine Liste: \set
Staff.keySignature = #`(((Oktave . Schritt) . Alteration) ((Oktave
. Schritt) . Alteration) ...)
wobei für jedes Element in der Liste
Oktave
die Oktave angibt (0 ist die Oktave vom
eingestrichenen C bis zum eingestrichenen H), Schritt
gibt
die Note innerhalb der Oktave an (0 heißt C und
6 heißt H), und Alteration
ist ,SHARP ,FLAT
,DOUBLE-SHARP
usw. (Beachte das beginnende Komma.)
Alternativ kann auch jedes Element der Liste mit dem allgemeineren Format
(Schritt . Alteration)
gesetzt werden, wobei dann die Einstellungen
für alle Oktaven gelten.
Hier ein Beispiel einer möglichen Tonart für eine Ganztonleiter:
\relative c' { \set Staff.keySignature = #`(((0 . 3) . ,SHARP) ((0 . 5) . ,FLAT) ((0 . 6) . ,FLAT)) c4 d e fis aes4 bes c2 }
See also
Glossar: church mode, scordatura.
Handbuch zum Lernen: Accidentals and key signatures.
Schnipsel: Pitches.
Referenz der Interna: KeyChangeEvent, Key_engraver, Key_performer, KeyCancellation, KeySignature, key-cancellation-interface, key-signature-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Key signature ] | [ Nach oben : Displaying pitches ] | [ Instrument transpositions > ] |
Ottava brackets
Oktavierungsklammern zeigen eine zusätzliche Transposition von einer Oktave an:
a'2 b \ottava #1 a b \ottava #0 a b
Die ottava
-(Oktavierungs)-Funktion kann auch die
Werte -1 (für 8va bassa),
2 (für 15ma), und -2 (für 15ma bassa) als Argumente
haben.
Selected Snippets
Ottava-Text
Intern setzt die set-octavation
-Funktion die Eigenschaften
ottavation
(etwa auf den Wert "8va"
oder "8vb"
)
und middleCPosition
. Um den Text der Oktavierungsklammer zu
ändern, kann ottavation
manuell gesetzt werden, nachdem
set-octavation
benützt wurde.
{ \ottava #1 \set Staff.ottavation = #"8" c''1 \ottava #0 c'1 \ottava #1 \set Staff.ottavation = #"Text" c''1 }
See also
Glossar: octavation.
Schnipsel: Pitches.
Referenz der Interna: Ottava_spanner_engraver, OttavaBracket, ottava-bracket-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Ottava brackets ] | [ Nach oben : Displaying pitches ] | [ Automatic accidentals > ] |
Instrument transpositions
Wenn man Noten setzt, die von transponierenden Instrumenten gespielt werden, sind oft einige Stimmen auf einer anderen Tonhöhe notiert als dem Kammerton. In diesem Fall muss die Tonart des transponierenden Instruments gekennzeichnet werden, weil sonst die MIDI-Ausgabe und Stichnoten in anderen Stimmen falsche Tonhöhen produzieren. Mehr Information zu Stichnoten in Quoting other voices.
\transposition Tonhöhe
Die Tonhöhe, die für \transposition
benutzt
wird, muss mit dem wirklichen Ton übereinstimmen,
der erklingt, wenn das Instrument ein c'
in seiner Stimme spielt. Die Tonhöhe wird im
absoluten Modus angegeben, ein Instrument also,
dass einen Ton höher erklingt als es notiert wird,
muss folgenden Befehl benutzen:
\transposition d'
. \transposition
sollte nur dann benutzt werden, wenn sie nicht
nicht in C notiert werden.
Hier einige Noten für Geige und B-Klarinette: die Stimmen (Noten und Vorzeichen) sind so notiert, wie sie in der Partitur erscheinen. Die zwei Instrumente spielen unisono.
\new GrandStaff << \new Staff = "violin" { \relative c'' { \set Staff.instrumentName = #"Vln" \set Staff.midiInstrument = #"violin" % not strictly necessary, but a good reminder \transposition c' \key c \major g4( c8) r c r c4 } } \new Staff = "clarinet" { \relative c'' { \set Staff.instrumentName = \markup { Cl (B\flat) } \set Staff.midiInstrument = #"clarinet" \transposition bes \key d \major a4( d8) r d r d4 } } >>
Die \transposition
kann während eines Stückes
geändert werden. Ein Klarinetist zum Beispiel kann
zwischen B- und A-Klarinette wechseln.
\set Staff.instrumentName = #"Cl (A)" \key a \major \transposition a c d e f \textLengthOn s1*0^\markup { Switch to B\flat clarinet } R1 \key bes \major \transposition bes c2 g
See also
Glossar: concert pitch, transposing instrument.
Notationsreferenz: Quoting other voices, Transpose.
Schnipsel: Pitches.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Instrument transpositions ] | [ Nach oben : Displaying pitches ] | [ Ambitus > ] |
Automatic accidentals
Es gibt viele unterschiedliche Regeln, wie Versetzungszeichen notiert werden. LilyPond hat eine Funktion, mit der spezifiziert werden kann, welcher Stil benutzt werden soll. Diese Funktion kann man wie folgt benutzen:
\new Staff << #(set-accidental-style 'voice) { … } >>
Der Versetzungszeichenstil bezieht sich auf das aktuelle
Notensystem in der Standardeinstellung (eine Ausnahme
bilden die Stile piano
und piano-cautionary
,
die weiter unten erklärt werden). Die Funktion kann aber
auch ein zweites Argument erhalten, mit der spezifiziert
wird, auf welchen Bereich sich der neue Stil erstreckt.
Um etwa den neuen Stil in allen Systemen einer
Stimmbruppe (StaffGroup
) zu benutzen, müsste der Befehl so aussehen:
#(set-accidental-style 'voice 'StaffGroup)
Folgende Versetzungszeichenstile sind unterstützt. Um jeden Stil zu erklären, wird folgendes Beispiel benützt:
musicA = { << \relative c' { cis'8 fis, d'4 <a cis>8 f bis4 | cis2. <c, g'>4 | } \\ \relative c' { ais'2 cis, | fis8 b a4 cis2 | } >> } musicB = { \clef bass \new Voice { \voiceTwo \relative c' { <fis, a cis>4 \change Staff = up cis' \change Staff = down <fis, a> \change Staff = up dis' | \change Staff = down <fis, a cis>4 gis <f a d>2 | } } } \new PianoStaff { << \context Staff = "up" { #(set-accidental-style 'default) \musicA } \context Staff = "down" { #(set-accidental-style 'default) \musicB } >> }
Die letzten Zeilen des Beispiels könnten auch mit folgendem Code ersetzt werden, solange der gleiche Versetzungszeichenstil in beiden Systemen benutzt werden soll:
\new PianoStaff { << \context Staff = "up" { %%% change the next line as desired: #(set-accidental-style 'default 'Score) \musicA } \context Staff = "down" { \musicB } >> }
-
default (Standard)
-
Das ist das Standardverhalten. Es entspricht der Konvention für Notation von Musik des 18. Jahrhunderts: Versetzungszeichen werden bis zum Taktende erinnert, in dem sie gesetzt wurden, und nur in ihrer eigenen Oktave. Im nächsten Beispiel wird also kein Auslösungszeichen vor dem
b
(H) im zweiten Takt oder dem letzenc
gesetzt: -
voice (Stimme)
-
Das normale Verhalten ist es, die Versetzungszeichen auf der Notensystemebene zu erinnern. In diesem Stil aber werden Versetzungszeichen individuell für jede Stimme errechnet. Abgesehen davon gelten die Regeln des Standardstiles (
default
).Das hat zur Folge, dass Versetzungszeichen von einer Stimme in der anderen nicht aufgelöst werden, was oft ein unerwünschtes Ergebnis ist: im folgenden Beispiel kann man schwer sagen, ob das zweite
a
unalteriert oder erhöht gespielt werden soll. Dievoice
-Option sollte also nur benutzt werden, wenn die Stimmen separat von unterschiedlichen Musikern gelesen werden. Wenn das System nur von einem Musiker benutzt wird (etwa der Dirigent oder ein Klavierspieler), dann sind die Stilemodern
odermodern-cautionary
besser. -
modern (Modern)
-
Dieser Stil orientiert sich an den üblichen Regeln für das 20. Jahrhundert. Die gleichen Versetzungszeichen wie im Standardstil werden gesetzt, allerdings mit zwei Ausnahmen, die Uneindeutigkeiten verhindern sollen: nach vorübergehenden Versetzungszeichen werden Auflösungszeichen auch im folgenden Takt gesetzt (für Noten innerhalb der selben Oktave) und im gleichen Takt für Noten in unterschiedlichen Oktaven. Daher kommen also die Auflösungszeichen vor dem H und dem C im zweiten Takt des oberen Systems:
-
modern-cautionary (Modern mit Warnungen)
-
Dieser Stil ähnelt
modern
, aber die „zusätzlichen“ Versetzungszeichen (die normalerweise nicht gesetzt werden) werden als Warnungen gesetzt. In der Standardeinstellung werden sie in Klammern gesetzt, aber sie können auch in kleinerer Größe gesetzt werden, wenn man diecautionary-style
-Eigenschaft vonAccidentalSuggestion
definiert. -
modern-voice (Modern für Stimmeen)
-
Diese Regel wird für vielstimmige Noten benutzt, die sowohl von unterschiedlichen Spielern für jede Stimme als auch von einem Spieler für alle Stimmen benutzt. Versetzungszeichen werden für jede Stimme gesetzt, aber sie werden über die Stimme hinweg aufgelöst innerhalb des selben Notensystems. Das
a
im letzten Takt ist also aufgelöst, weil die vorigen Auflösung in einer anderen Stimme stattgefunden hatte, und dasd
im unteren System ist aufgelöst wegen eines Versetzunszeichens in einer anderen Stimme im vorigen Takt: -
modern-voice-cautionary (modern mit Warnungen für einzelne Stimmen)
-
Dieser Stil ist der gleiche wie
modern-voice
, nur dass hier die zusätzlichen Versetzungszeichen (die nicht vomvoice
-Stil gesetzt werden) als Warnungsversetzungszeichen gesetzt werden. Obwohl alle Versetzungszeichen, die mitdefault
gesetzt werden, auch mit diesem Stil gesetzt werden, sind manche Warnungsversetzungszeichen. -
piano (Klavier)
-
Dieser Stil orientiert sich an den Regeln im 20. Jahrhundert für die Notation von Klaviermusik. Er ist sehr ähnlich mit dem modernen Stil, aber Versetzungszeichen werden auch über Notensysteme hinweg für die selbe Akkolade (
GrandStaff
oderPianoStaff
) aufgelöst.Dieser Versetzungszeichenstil wirkt sich standardmäßig auf die gesamte Akkolade (
GrandStaff
oderPianoStaff
) aus. -
piano-cautionary (Klavier mit Warnungen)
-
Dieser Stil verhält sich wie
piano
, aber die zusätzlichen Versetzungszeichen werden als Warnungen ausgegeben: -
neo-modern
-
Dieser Stil richtet sich nach den Regeln für moderne Musik: Versetzungszeichen werden mit im
modern
-Stil gesetzt, aber sie werden nochmal gesetzt, wenn die gleiche Note später im selben Takt auftritt – außer die Note wird unmittelbar wiederholt. -
neo-modern-cautionary (neo-modern mit Warnungen)
-
Dieser Stil ähnelt
neo-modern
, aber die zusätzlichen Versetzungszeichen werden als Warnungen gesetzt. -
dodecaphonic (Zwölftonmusik)
-
Dieser Stil orientiert sich an der Notation von sog. Zwölftonmusik, der Stil wurde Anfang des 20. Jahrhunderts in Gebrauch genommen. In diesem Stil erhält jede Note ein Versetzungszeichen, wozu auch Auflösungszeichen zählen.
-
teaching (didaktisch)
-
Dieser Stil ist für Lernende bestimmt: der Stil orientiert sich am
modern
-Stil, aber die Alterationen, die sich durch die Tonart ergeben, werden zusätzlich als Warnungsversetzungszeichen gesetzt. Eine Ausnahme sind direkt wiederholte Noten. -
no-reset (nicht zurücksetzen)
-
Das ist der gleiche Stil wie
default
, aber die Versetzungszeichen dauern für „immer“ an, nicht nur im aktuellen Takt: -
forget (vergessen)
-
Das ist das Gegenteil von
no-reset
: Versetzungszeichen werden überhaupt nicht erinnert und folgerichtig werden alle Versetzungszeichen entsprechend der Tonart gesetzt, unabhängig vom Kontext der Noten. Anders alsdodecaphonic
werden nie Auflösungszeichen gesetzt:
Selected Snippets
Versetzungszeichen für jede Note im Stil der Zwölftonmusik
In Werken des fürhen 20. Jahrhundert, angefangen mit Schönberg, Berg und Webern (die zweite Wiener Schule), wird jeder Ton der Zwölftonleiter als gleichwertig erachtet, ohne hierarchische Ordnung. Deshalb wird in dieser Musik für jede Note ein Versetzungszeichen ausgegeben, auch für unalterierte Tonhöhen, um das neue Verständnis der Musiktheorie und Musiksprache zu verdeutlichen.
Dieser Schnipsel zeigt, wie derartige Notationsregeln zu erstellen sind.
\score { \new Staff { #(set-accidental-style 'dodecaphonic) c'4 dis' cis' cis' c'4 dis' cis' cis' c'4 c' dis' des' } \layout { \context { \Staff \remove "Key_engraver" } } }
See also
Schnipsel: Pitches.
Referenz der Interna: Accidental, Accidental_engraver, GrandStaff and PianoStaff, Staff, AccidentalSuggestion, AccidentalPlacement, accidental-suggestion-interface.
Known issues and warnings
Gleichzeitig erklingende Noten müssen im sequenziellen Modus eingegeben
werden. Das bedeutet, dass die Versetzungszeichen von Noten in
Akkorden so gesetzt werden, als ob die Noten nacheinander auftreten,
in der Reihenfolge, in der sie im Quelltext erscheinen. Das ist ein
Problem, wenn Versetzungzeichen in einem AKkord voneinander abhängen,
was im Standard-Stil nicht vorkommt. Das Problem kann gelöst werden,
indem man manuell !
oder ?
für die problematischen
Noten schreibt.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Automatic accidentals ] | [ Nach oben : Displaying pitches ] | [ Note heads > ] |
Ambitus
Der Begriff ambitus (Pl. ambitus) beschreibt den Stimmumfang einer Stimme. Er kann auch die Töne bedeuten, die ein Musikinstrument zu spielen in der Lage ist. Ambitus werden in Chorpartituren gesetzt, damit die Sänger schnell wissen, ob sie die Stimme meistern können.
Ambitus werden zu Beginn des Stückes nahe des ersten Schlüssels notiert. Der Stimmumfang wird durch zwei Notenköpfe dargestellt, die die tiefste und höchste Note der Stimme repräsentieren. Versetzungszeichen werden nur gesetzt, wenn sie nicht durch die Tonart definiert werden.
\layout { \context { \Voice \consists "Ambitus_engraver" } } \relative c'' { aes c e2 cis,1 }
Selected Snippets
Ambitus pro Stimme hinzufügen
Ambitus können pro Stimme gesetzt werden. In diesem Fall müssen sie manual verschoben werden, um Zusammenstöße zu verhindern.
\new Staff << \new Voice \with { \consists "Ambitus_engraver" } \relative c'' { \override Ambitus #'X-offset = #2.0 \voiceOne c4 a d e f1 } \new Voice \with { \consists "Ambitus_engraver" } \relative c' { \voiceTwo es4 f g as b1 } >>
Ambitus mit vielen Stimmen
Indem man den Ambitus_engraver
im Staff
-Kontext
hinzufügt, erhält man einen einzigen Ambitus pro System, auch in dem
Fall, dass mehrere Stimmen sich im gleichen System befinden.
\new Staff \with { \consists "Ambitus_engraver" } << \new Voice \relative c'' { \voiceOne c4 a d e f1 } \new Voice \relative c' { \voiceTwo es4 f g as b1 } >>
See also
Glossar: ambitus.
Schnipsel: Pitches.
Referenz der Interna: Ambitus_engraver, Voice, Staff, Ambitus, AmbitusAccidental, AmbitusLine, AmbitusNoteHead, ambitus-interface.
Known issues and warnings
Es gibt keine Kollisionskontrolle bei mehreren Ambitus in einem System.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Ambitus ] | [ Nach oben : Pitches ] | [ Special note heads > ] |
1.1.4 Note heads
Dieser Abschnitt zeigt, wie man Notenköpfe ändern kann.
Special note heads | ||
Easy notation note heads | ||
Shape note heads | ||
Improvisation |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Note heads ] | [ Nach oben : Note heads ] | [ Easy notation note heads > ] |
Special note heads
Notenköpfe können verändert werden:
c4 b a b \override NoteHead #'style = #'cross c4 b a b \revert NoteHead #'style c4 d e f
Es gibt einen definierten Befehl für die Raute, der nur innerhalb von Akkorden benutzt werden kann:
<c f\harmonic>2 <d a'\harmonic>4 <c g'\harmonic>
Alle möglichen Notenkopf-Stile finden sich in Note head styles.
See also
Schnipsel: Pitches.
Notationsreferenz: Note head styles, Chorded notes.
Referenz der Interna: note-event, Note_heads_engraver, Ledger_line_engraver, NoteHead, LedgerLineSpanner, note-head-interface, ledger-line-spanner-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Special note heads ] | [ Nach oben : Note heads ] | [ Shape note heads > ] |
Easy notation note heads
Die „einfachen Notenköpfe“ haben die Bezeichnung der Note im Kopf gedruckt. Das wird eingesetzt, um die Notation beizubringen. Damit die Buchstaben noch lesbar sind, müssen sie sehr groß gesetzt werden. Wie man eine größere Schriftart einstellt, findet sich in Setting the staff size.
#(set-global-staff-size 26) \relative c' { \easyHeadsOn c2 e4 f g1 \easyHeadsOff c,1 }
Predefined commands
\easyHeadsOn
,
\easyHeadsOff
.
See also
Notationsreferenz: Setting the staff size.
Schnipsel: Pitches.
Referenz der Interna: note-event, Note_heads_engraver, NoteHead, note-head-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Easy notation note heads ] | [ Nach oben : Note heads ] | [ Improvisation > ] |
Shape note heads
In dieser Notation haben die Notenköpfe eine Form, die ihrer harmonischen Funktion innherhalb der Tonleiter entspricht. Die Notation war sehr beliebt in amerikanischen Liederbüchern des 19. Jahrhunderts. Auf diese Weise können die Formen benutzt werden:
\aikenHeads c, d e f g a b c \sacredHarpHeads c, d e f g a b c
Die unterschiedlichen Formen richten sich nach der Stufe in der
Skala, wobei der Grundton der Skala aus dem \key
-Befehl
entnommen wird.
Predefined commands
\aikenHeads
,
\sacredHarpHeads
.
Selected Snippets
Notenkopfstile besierend auf der Tonleiterstufe erstellen
Die shapeNoteStyles
-(NotenFormenStile)-Eigenschaft kann benutzt
werden, um verschiedene Notenstile für jeden Schritt der Tonleiter
zudefinieren (vorgegeben von der Tonart oder der ‚tonic‘
(Tonika)-Eigneschaft. Diese Eigenschaft braucht eine Anzahl von Symbolen,
welche beliebig sein können (geometrische Ausdrücke wie triangle
(Dreieck), cross
(Kreuz) und 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 \aikenHeads
(im Stil von Aiken)
oder \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.
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 } } \layout { ragged-right = ##t } }
Alle Notenkopfstile finden sich in Note head styles.
See also
Schnipsel: Pitches.
Notationsreferenz: Note head styles.
Referenz der Interna: note-event, Note_heads_engraver, NoteHead, note-head-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Shape note heads ] | [ Nach oben : Note heads ] | [ Rhythms > ] |
Improvisation
Improvisation wird manchmal angezeigt, indem schräge Notenköpfe gesetzt werden, wenn der Spieler eine beliebige Tonhöhe wählen kann aber den vorgegebenen Rhythmus spielen soll. Sie können wie folgt benutzt werden:
\new Voice \with { \consists "Pitch_squash_engraver" } { e8 e g a a16( bes) a8 g \improvisationOn e8 ~ e2 ~ e8 f4 f8 ~ f2 \improvisationOff a16( bes) a8 g e }
Predefined commands
\improvisationOn
,
\improvisationOff
.
See also
Schnipsel: Pitches.
Referenz der Interna: Pitch_squash_engraver, Voice, RhythmicStaff.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Improvisation ] | [ Nach oben : Musical notation ] | [ Writing rhythms > ] |
1.2 Rhythms
Dieser Abschnitt erklärt die Eingabe von Rhythmen, Pausen, Dauern, Bebalkung und Takten.
1.2.1 Writing rhythms | ||
1.2.2 Writing rests | ||
1.2.3 Displaying rhythms | ||
1.2.4 Beams | ||
1.2.5 Bars | ||
1.2.6 Special rhythmic concerns |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Rhythms ] | [ Nach oben : Rhythms ] | [ Durations > ] |
1.2.1 Writing rhythms
Durations | ||
Tuplets | ||
Scaling durations | ||
Ties |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Writing rhythms ] | [ Nach oben : Writing rhythms ] | [ Tuplets > ] |
Durations
Notenlängen (Dauern) werden durch
Zahlen und Punkte notiert: Dauern werden als reziproke Werte geschrieben.
Zum Beispiel wird eine Viertelnote mit 4
notiert (weil sie eine
1/4-Note ist), eine halbe Note mit 2
(weil sie eine 1/2-Note ist).
Noten, die länger als eine Ganze sind, müssen mit \longa
(für die Longa, also vier Ganze) und
\breve
(für die Brevis, auch Doppelganze genannt) notiert werden.
Notendauern bis hin zu 128steln sind unterstützt. Kürzere Notenwerte können
auch notiert werden, können allerdings nur als Noten mit Balken auftreten.
\time 8/1 c\longa c\breve c1 c2 c4 c8 c16 c32 c64 c64
Hier die selben Notendauern ohne die Balken.
\time 8/1 \autoBeamOff c\longa c\breve c1 c2 c4 c8 c16 c32 c64 c64
Eine Note mit der vierfacheen Dauer einer Brevis kann mit dem
Befehl \maxima
eingegeben werden, aber ihre Darstellung
ist nur für die Alte Musiknotation unterstützt. Zu Einzelheiten
siehe Ancient notation.
Wenn die Dauer hinter einer Notenbezeichnung nicht angegeben ist, wird die Dauer der vorhergehenden Note eingesetzt. Der Standardwert für die erste Note ist eine Viertel.
a a a2 a a4 a a1 a
Um punktierte Notendauern zu erhalten, muss einfach nur ein Punkt
(.
) hinter die Zahl der Dauer gesetzt werden. Zwei Punkte
ergeben eine doppelte Punktierung, usw.
a4 b c4. b8 a4. b4.. c8.
Manche Notenlängen können nicht mit binären Dauern und Punkten dargestellt werden, sie können nur erreicht werden, indem man Noten überbindet. Für Einzelheiten siehe Ties.
Wie den Silben von Gesangtext eigene Dauern zu gewiesen werden können und wie man sie an den Noten ausrichtet ist erklärt in Vocal music.
Optional können Noten streng proportional nach ihrer exakten Dauer gesetzt werden. Zu Einzelheiten hierzu und weiteren Einstellungen für proportionale Notation siehe Proportional notation.
Punkte werden normalerweise nach oben verschoben, damit sie die Notenlinien nicht berühren. Fertige Befehle können eingesetzt werden, um eine bestimmte Richtung manuell zu erzwingen, zu Einzelheiten siehe Direction and placement.
Predefined commands
\autoBeamOff
,
\dotsUp
,
\dotsDown
,
\dotsNeutral
.
See also
Glossar: breve, longa, maxima, note value, Duration names notes and rests.
Notationsreferenz: Automatic beams, Ties, Writing rhythms, Writing rests, Vocal music, Ancient notation, Proportional notation.
Schnipsel: Rhythms.
Referenz der Interna: Dots, DotColumn.
Known issues and warnings
Es gibt keine grundlegende Grenze für die Dauer von Pausen (sowohl kürzer als auch länger), aber die Anzahl an Symbolen ist begrenzt: Einzelne Pausen können von 128stel bis zur Maxima (8 Ganze) gesetzt werden.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Durations ] | [ Nach oben : Writing rhythms ] | [ Scaling durations > ] |
Tuplets
Triolen und andere rhythmische Aufteilungen werden aus einem musikalischen Ausdruck erstellt, indem dessen Tondauern mit einem Bruch multipliziert werden.
\times Bruch musikalischer Ausdruck
Die Dauer eines musikalischen Ausdrucks wird mit dem Bruch multipliziert. Der Nenner des Bruchs wird über (oder unter) den Noten ausgegeben, optional mit einer eckigen Klammer, die die Noten einfasst. Die üblichste Aufteilung ist die Triole, in welcher drei Noten die Länge von zwei haben, der Wert jeder einzelnen Note ist also 2/3 der notierten Länge.
a2 \times 2/3 { b4 b b } c4 c \times 2/3 { b4 a g }
Die automatische Platzierung der Triolenklammer über oder unter den Noten kann manuell geändert werden mit definierten Befehlen, siehe Direction and placement.
N-tolen können ineinander geschachtelt werden:
\autoBeamOff c4 \times 4/5 { f8 e f \times 2/3 { e[ f g] } } f4 |
Wenn man die Eigenschaften von N-tolen verändern will, die zum
selben musikalischen Zeitpunkt beginnen, muss \tweak
eingesetzt werden.
Um die Dauern von Noten zu ändern, ohne die N-tolen-Klammern zu setzen, siehe Scaling durations.
Predefined commands
\tupletUp
,
\tupletDown
,
\tupletNeutral
.
Selected Snippets
Mehrere Triolen notieren, aber nur einmal \times benutzen
Die Eigenschaft tupletSpannerDuration
bestimmt, wie lange jede
der N-tolen innerhalb der Klammern nach dem \times
-Befehl
dauert. Auf diese Art können etwa viele Triolen nacheinander mit nur
einem \times
-Befehl geschrieben werden.
Im Beispiel sind zwei Triolen zu sehen, obwohl \times
nur
einmal geschrieben wurde.
Mehr Information über make-moment
gibt es in "Verwaltung der Zeiteinheiten".
\relative c' { \time 2/4 \set tupletSpannerDuration = #(ly:make-moment 1 4) \times 2/3 { c8 c c c c c } }
Die Zahl der N-tole verändern
Standardmäßig wird nur der Zähler des N-tolen-Bruchs über der Klammer
dargestellt, wie er dem \times
-Befehl übergeben wird.
Man kann aber auch Zähler/Nenner ausgeben lassen, oder die Zahl
vollständig unterdrücken.
\relative c'' { \times 2/3 { c8 c c } \times 2/3 { c8 c c } \override TupletNumber #'text = #tuplet-number::calc-fraction-text \times 2/3 { c8 c c } \override TupletNumber #'stencil = ##f \times 2/3 { c8 c c } }
Zeilenumbrüche bei N-tolen mit Balken erlauben
Dieses künstliche Beispiel zeigt, wie sowohl automatische als auch manuelle Zeilenumbrüche innerhalb einer N-tole mit Balken erlaubt werden können. Diese unregelmäßige Bebalkung muss allerdings manuell gesetzt werden.
\layout { \context { \Voice % Permit line breaks within tuplets \remove "Forbid_line_break_engraver" % Allow beams to be broken at line breaks \override Beam #'breakable = ##t } } \relative c'' { a8 \repeat unfold 5 { \times 2/3 { c[ b a] } } % Insert a manual line break within a tuplet \times 2/3 { c[ b \bar "" \break a] } \repeat unfold 5 { \times 2/3 { c[ b a] } } c8 }
See also
Glossar: triplet, tuplet, polymetric.
Handbuch zum Lernen: Tweaking methods.
Notationrreferenz:
Time administration,
Scaling durations,
The \tweak
command,
Polymetric notation.
Schnipsel: Rhythms.
Referenz der Interna: TupletBracket, TupletNumber, TimeScaledMusic.
Known issues and warnings
Wenn die erste Noten eines Systems ein Vorschlag (eine Verzierung)
ist, die von einer N-tole gefolgt ist, muss der Vorschlag
vor den \times
-Befehl gesetzt werden um Fehler zu
vermeiden. Überall sonst können Vorschläge innerhalb von
N-tolen gesetzt werden.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Tuplets ] | [ Nach oben : Writing rhythms ] | [ Ties > ] |
Scaling durations
Die Dauer von einzelnen Noten, Pausen oder Akkorden kann mit einem Bruch multipliziert werden, indem hinter die Notendauer „*N/M“ (oder „*N“ wenn M 1 ist) geschrieben wird. Die Erscheinung der Noten oder Pausen wird dadurch nicht beeinflusst, die neue Dauer wird aber dazu benutzt, ihre Position im Takt zu errechnen und die neue Dauer in der MIDI-Ausgabe einzusetzen. Die Faktoren, mit denen multipliziert wird, können auch kombiniert werden, etwa „*L*M*/N“.
Im nächsten Beispiel nehmen die drei ersten Noten genau zwei Schläge ein, aber es wird keine Triolenklammer über ihnen ausgegeben.
\time 2/4 % Alter durations to triplets a4*2/3 gis4*2/3 a4*2/3 % Normal durations a4 a4 % Double the duration of chord <a d>4*2 % Duration of quarter, appears like sixteenth b16*4 c4
Die Dauer von unsichtbaren Noten kann auch mit einem Faktor
beeinflusst werden. Das ist sinnvoll, wenn man viele Takte
überspringen muss, etwa s1*23
.
Längere Notenabschnitte können auf die gleiche Art durch Multiplikation mit einem Bruch komprimiert werden, als ob jede Note, jeder Akkord oder jede Pause mit dem Bruch multipliziert würde. Damit bleibt das Aussehen der Musik unverändert, aber die interne Dauer der Noten wird mit dem Bruch multipliziert. Die Leerzeichen um den Punkt im Beispiel sind notwendig. Hier ein Beispiel, das zeigt, wie Noten komprimiert und ausgedehnt werden kann:
\time 2/4 % Normal durations <c a>4 c8 a % Scale music by *2/3 \scaleDurations #'(2 . 3) { <c a f>4. c8 a f } % Scale music by *2 \scaleDurations #'(2 . 1) { <c' a>4 c8 b }
Eine Anwendung für diesen Befehl ist polymetrische Notation, siehe Polymetric notation.
See also
Notationsreferenz: Tuplets, Invisible rests, Polymetric notation.
Schnipsel: Rhythms.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Scaling durations ] | [ Nach oben : Writing rhythms ] | [ Writing rests > ] |
Ties
Ein Bindebogen verbindet zwei benachbarte Noten der selben Tonhöhe. Als Resultat wird die Dauer der Notenlänge verlängert.
Achtung: Bindebögen dürfen nicht mit Legatobögen verwechselt werden, durch die die Vortragsart bezeichnet wird, noch mit Phrasierungsbögen, die musikalische Phrasen anzeigen. Ein Bindebogen ist nur eine Art, die Tondauer zu verlängern, ähnlich etwa wie die Punktierung. |
Ein Bindebogen wird mit der
Tilde ~
(AltGr++) notiert.
a2 ~ a
Bindebögen werden eingesetzt, wenn die Note entweder über eine Taktlinie hinüberreicht, oder wenn die entsprechende Dauer der Note nicht mit Punktierung erreicht werden kann. Bindebögen sollten auch benutzt werden, wenn Notenwerte über die inneren Unterteilungen von Takten hinüberreichen:
Wenn viele Noten über Taktlinien gebunden werden müssen, kann es einfacher sein, automatische Notenaufteilung einzustellen, wie beschrieben in Automatic note splitting. Mit diesem Mechanismus werden lange Noten automatisch aufgeteilt, wenn sie über Taktgrenzen reichen.
Wenn ein Bindebogen an einen Akkord gehängt wird, werden alle Noten dieses Akkordes übergebunden. Wenn kein Notenkopf passt, wird auch kein Bogen erzeugt. Noten in Akkorden können auch einzeln übergebunden werden, indem sie innerhalb des Akkordes hinter die entsprechende Note geschrieben werden.
<c e g> ~ <c e g> <c~ e g~ b> <c e g b>
Wenn die zweite Variante einer Wiederholung mit einer übergebundenen Note anfängt, muss der Bindebogen wie folgt notiert werden:
\repeat volta 2 { c g <c e>2 ~ } \alternative { % First alternative: following note is tied normally { <c e>2. r4 } % Second alternative: following note has a repeated tie { <c e>2\repeatTie d4 c } }
So genannte laissez vibrer-Bögen werden verwendet um anzuzeigen, dass man die Musik ausklingen lassen soll. Sie werden in der Klavier-, Harfen-, anderer Saiteninstrument- und Schlagzeugnotation verwendet. Sie können folgendermaßen notiert werden:
<c f g>1\laissezVibrer
Die vertikale Position von Bindebögen kann kontrolliert werden, siehe die vordefinierten Befehle unten oder für Einzelheiten Direction and placement.
Durchgehende, gepunktete oder gestrichelte Bindebögen können spezifiziert werden, siehe die vordefinieren Befehle.
Predefined commands
\tieUp
,
\tieDown
,
\tieNeutral
,
\tieDotted
,
\tieDashed
,
\tieSolid
.
Selected Snippets
Überbingungen für Arpeggio genutzen
Überbindungen werden teilweise benutzt, um Arpeggios zu notieren. In
diesem Fall stehen die übergebundenen Noten nicht unbedingt hintereinander.
Das Verhalten kann erreicht werden, indem die tieWaitForNote
-Eigenschaft
auf #t
gesetzt wird. Diese Funktion ist auch sinnvoll, um etwa
ein Tremolo mit einem Akkord zu überbinden, kann aber prinzipiell auch
für normale Überbindungen eingesetzt werden
\relative c' { \set tieWaitForNote = ##t \grace { c16[ ~ e ~ g] ~ } <c, e g>2 \repeat tremolo 8 { c32 ~ c' ~ } <c c,>1 e8 ~ c ~ a ~ f ~ <e' c a f>2 \tieUp c8 ~ a \tieDown \tieDotted g8 ~ c g2 }
Bindebögen manuell setzen
Überbindungen können manuell gesetzt werden, indem man die
tie-configuration
-Eigenschaft des TieColumn
-Objekts
beeinflusst. Die erste Zahl zeigt den Abstand von der Mitte in
Notensystemabständen an, die zweite Zahl zeigt die Richtung an (1 = nach oben,
-1 = nach unten).
\relative c' { <c e g>2 ~ <c e g> \override TieColumn #'tie-configuration = #'((0.0 . 1) (-2.0 . 1) (-4.0 . 1)) <c e g> ~ <c e g> }
See also
Glossar: tie, laissez vibrer.
Notationsreferenz: Automatic note splitting.
Schnipsel: Rhythms.
Referenz der Interna: LaissezVibrerTie, LaissezVibrerTieColumn, TieColumn, Tie.
Known issues and warnings
Der Wechsel zwischen Systemen bei aktiver Überbindung produziert keinen gekrümmten Bogen.
Änderung von Schlüssel oder Oktavierung zwischen übergebundenen Noten ist nicht richtig definiert. In diesen Fällen kann es besser sein, einen Legatobogen zu verwenden.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Ties ] | [ Nach oben : Rhythms ] | [ Rests > ] |
1.2.2 Writing rests
Pausen werden als Teil der musikalischen Ausdrücke zusammen mit den Noten notiert.
Rests | ||
Invisible rests | ||
Full measure rests |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Writing rests ] | [ Nach oben : Writing rests ] | [ Invisible rests > ] |
Rests
Pausen werden wie Noten eingegeben, ihre Bezeichnung ist r
.
Dauern, die länger als eine Ganze sind, haben die gezeigten
vordefinierten Befehle:
\new Staff { % These two lines are just to prettify this example \time 16/1 \override Staff.TimeSignature #'stencil = ##f % Print a maxima rest, equal to four breves r\maxima % Print a longa rest, equal to two breves r\longa % Print a breve rest r\breve r1 r2 r4 r8 r16 r32 r64 r128 }
Pausen, die ganze Takte ausfüllen und in der Taktmitte zentriert werden sollen, müssen als mehrtaktige Pausen eingegeben werden. Sie können sowohl für einen einzigen Takt als auch für mehrere Takte verwendet werden, Näheres im Abschnitt Full measure rests.
Um die vertikale Position einer Pause explizit festzulegen,
kann eine Note eingegeben werden, gefolgt vom Befehl \rest
.
Die Pause wird dann an die Stelle gesetzt, wo sich sonst die
Note befinden würde. Damit wird die manuelle Formatierung von mehrstimmiger Musik
sehr viel einfacher, da die Formatierungsfunktion zur automatischen
Auflösung von Zusammenstößen diese Pausen nicht mit einbezieht.
a4\rest d4\rest
Pausenstile
Pausen können in verschiedenen Stilen dargestellt werden.
\layout { indent = 0.0 \context { \Staff \remove "Time_signature_engraver" } } \new Staff \relative c { \cadenzaOn \override Staff.Rest #'style = #'mensural r\maxima^\markup \typewriter { mensural } r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128 \bar "" \override Staff.Rest #'style = #'neomensural r\maxima^\markup \typewriter { neomensural } r\longa r\breve r1 r2 r4 r8 r16 s32 s64 s128 s128 \bar "" \override Staff.Rest #'style = #'classical r\maxima^\markup \typewriter { classical } r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128 \bar "" \override Staff.Rest #'style = #'default r\maxima^\markup \typewriter { default } r\longa r\breve r1 r2 r4 r8 r16 r32 r64 r128 s128 }
See also
Glossar: breve, longa, maxima.
Notationsreferenz: Full measure rests.
Schnipsel: Rhythms.
Referenz der Interna: Rest.
Known issues and warnings
Es gibt keine gundlegende Grenze für die Dauer von Pausen (sowohl kürzer als auch länger), aber die Anzahl von Symbolen ist begrenzt: Es gibt Zeichen für Pausen von einer 128 bis zu einer Maxima (8 Ganze).
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Rests ] | [ Nach oben : Writing rests ] | [ Full measure rests > ] |
Invisible rests
Eine unsichtbare Pause (auch als „skip“ oder Überspringung bezeichnet)
kann wie eine Note eingegeben werden, die Notationsbezeichnung ist s
.
a4 a4 s4 a4 \skip 1 a4
Die s
-Syntax steht nur im Noten- oder Akkordmodus zur Verfügung. In
anderen Situationen, z. B. innerhalb eines Liedtextes, muss \skip
benutzt werden. \skip
benötigt eine explizite Dauerangabe.
<< { a2 \skip2 a2 a2 } \new Lyrics { \lyricmode { foo2 \skip 1 bla2 } } >>
Die Überspringung mit s
erstellt Staff
und
Voice
-Kontext, wenn es erforderlich ist, genauso wie Noten und Pausen.
s1 s s
Der Überspringungsbefehl (\skip
) ist einfach ein leerer Platzhalter.
Durch ihn wird
überhaupt nichts gesetzt, auch keine transparenten Objekte.
% This is valid input, but does nothing \skip 1 \skip1 \skip 1
See also
Schnipsel: Rhythms.
Referenz der Interna: SkipMusic
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Invisible rests ] | [ Nach oben : Writing rests ] | [ Displaying rhythms > ] |
Full measure rests
Pausen für einen oder mehrere ganze Takte werden wie
Noten eingegeben, wobei die Bezeichnung ein Großbuchstabe
R
ist:
% Rest measures contracted to single measure \compressFullBarRests R1*4 R1*24 R1*4 b2^"Tutti" b4 a4
Die Dauer von Ganztaktpausen wird genauso angegeben wie die Dauer von Noten. Die Dauer einer Ganztaktpause muss immer eine ganze Anzahl an Taktlängen sein, weshalb Punktierungen und Brüche recht häufig eingesetzt werden müssen.
\compressFullBarRests \time 2/4 R1 | R2 | \time 3/4 R2. | R2.*2 | \time 13/8 R1*13/8 | R1*13/8*12 | \time 10/8 R4*5*4 |
Eine Ganztaktpause wird abhängig von der Taktart entweder als Ganze oder Brevis-Pause gesetzt, zentriert im Takt.
\time 4/4 R1 | \time 6/4 R1*3/2 | \time 8/4 R1*2 |
In den Standardeinstellungen werden mehrtaktige Pausen ausgeschrieben gesetzt, sodass sie die entsprechende Anzahl von Takten einnehmen. Alternativ kann die mehrtaktige Pause aber auch nur in einem Takt angezeigt werden, der ein Mehrtaktpausensymbol geinhaltet, wobei die Anzahl der Takte der Pausendauer über dem Pausenzeichen ausgegeben wird:
% Default behavior \time 3/4 r2. | R2.*2 | \time 2/4 R2 | \time 4/4 % Rest measures contracted to single measure \compressFullBarRests r1 | R1*17 | R1*4 | % Rest measures expanded \expandFullBarRests \time 3/4 R2.*2 |
Textbeschriftung kann Mehrtaktpausen mit \markup
hinzugefügt werden. Ein
vordefinierte Befehl \fermataMarkup
fügt eine
Fermate ein.
\compressFullBarRests \time 3/4 R2.*10^\markup { \italic "ad lib." } R2.^\fermataMarkup
Achtung: Beschriftungen, die an Mehrtaktpausen gehängt werden, sind
Objekte vom Typ |
% This fails, as the wrong object name is specified \override TextScript #'padding = #5 R1^"wrong" % This is correct and works \override MultiMeasureRestText #'padding = #5 R1^"right"
Wenn eine Mehrtaktpause direkt auf einen Auftakt mit \partial
folgt, werden möglicherweise daraus resultierende
Taktprüfungswarnungen nicht angezeigt.
Predefined commands
\textLengthOn
,
\textLengthOff
,
\fermataMarkup
,
\compressFullBarRests
,
\expandFullBarRests
.
Selected Snippets
Die Erscheinung von Pausentakten ändern
Wenn zehn oder weniger Pausentakte vorkommen, wird eine Reihe von Longa-
und Brevispausen (auch Kirchenpausen genannt) gesetzt, bei mehr Takten
wird eine Line mit der Taktanzahl ausgegeben. Der vorgegebene Wert von
zehn kann geändert werden, indem man die expand-limit
-Eigenschaft
setzt:
\relative c'' { \compressFullBarRests R1*2 | R1*5 | R1*9 \override MultiMeasureRest #'expand-limit = #3 R1*2 | R1*5 | R1*9 }
Positionierung von Ganztaktpausen
Anders als bei normalen Pausen gibt es keinen direkten Befehl, um die vertikale Position von Ganztaktpausen zu beeinflussen, indem man sie an eine Tonhöhe anhängt. In polyphoner Notation wird aber dennoch die Position der Pausen von geraden und ungeraden Stimmen voneinander unterschieden. Die Position von Ganztaktpausen kann wie folgt verändert werden:
\relative c'' { % Multi-measure rests by default are set under the fourth line R1 % They can be moved with an override \override MultiMeasureRest #'staff-position = #-2 R1 % A value of 0 is the default position; % the following trick moves the rest to the center line \override MultiMeasureRest #'staff-position = #-0.01 R1 % Multi-measure rests in odd-numbered voices are under the top line << { R1 } \\ { a1 } >> % Multi-measure rests in even-numbered voices are under the bottom line << { c1 } \\ { R1 } >> % They remain separated even in empty measures << { R1 } \\ { R1 } >> % This brings them together even though there are two voices \compressFullBarRests << \revert MultiMeasureRest #'staff-position { R1*3 } \\ \revert MultiMeasureRest #'staff-position { R1*3 } >> }
Multi-measure rest markup
Markups attached to a multi-measure rest will be centered above or below it. Long markups attached to multi-measure rests do not cause the measure to expand. To expand a multi-measure rest to fit the markup, use a spacer rest with an attached markup before the multi-measure rest.
Note that the spacer rest causes a bar line to be inserted. Text attached to a spacer rest in this way is left-aligned to the position where the note would be placed in the measure, but if the measure length is determined by the length of the text, the text will appear to be centered.
\relative c' { \compressFullBarRests \textLengthOn s1*0^\markup { [MAJOR GENERAL] } R1*19 s1*0_\markup { \italic { Cue: ... it is yours } } s1*0^\markup { A } R1*30^\markup { [MABEL] } \textLengthOff c4^\markup { CHORUS } d f c }
See also
Glossar: multi-measure rest.
Notationsreferenz: Durations, Text, Formatting text, Text scripts.
Schnipsel: Rhythms.
Referenz der Interna: MultiMeasureRest, MultiMeasureRestNumber, MultiMeasureRestText.
Known issues and warnings
Wenn man versucht, mit Fingersatz (etwa R1*10-4
Zahlen
über Ganztaktpausen zu setzen, kann die Zahl des Fingersatzes
(4) mit der Taktanzahl (10) zusammenstoßen.
Es gibt keine Möglichkeit, normale Pausen automatisch zu Ganztaktpausen zu reduzieren.
Ganztaktpausen werden bei der Vermeidung von Zusammenstößen nicht berücksichtigt.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Full measure rests ] | [ Nach oben : Rhythms ] | [ Time signature > ] |
1.2.3 Displaying rhythms
Time signature | ||
Upbeats | ||
Unmetered music | ||
Polymetric notation | ||
Automatic note splitting | ||
Showing melody rhythms |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Displaying rhythms ] | [ Nach oben : Displaying rhythms ] | [ Upbeats > ] |
Time signature
Taktangaben könne wie folgt erstellt werden.
\time 2/4 c'2 \time 3/4 c'2.
Taktangaben werden zu Beginn eines Stückes gesetzt und immer dann, wenn sich die Taktart ändert. Wenn eine Änderung am Ende einer Zeile geschieht, wird eine warnende Taktangabe am Ende der Zeile ausgegeben. Dieses Verhalten kann verändert werden, siehe Visibility of objects.
\time 2/4 c2 c \break c c \break \time 4/4 c c c c
Das Symbol für die Taktarten 2/2 und 4/4 kann in ein Zahlensymbol umgewandelt werden:
% Default style \time 4/4 c1 \time 2/2 c1 % Change to numeric style \numericTimeSignature \time 4/4 c1 \time 2/2 c1 % Revert to default style \defaultTimeSignature \time 4/4 c1 \time 2/2 c1
Symbole für Modus und Proprietas der mensuralen Notation werden behandelt unter Ancient time signatures.
Predefined commands
\numericTimeSignature
,
\defaultTimeSignature
.
Selected Snippets
Changing the time signature without affecting the beaming
The \time
command sets the properties
timeSignatureFraction
, beatLength
, beatGrouping
and measureLength
in the Timing
context, which is
normally aliased to Score
. Changing the value of
timeSignatureFraction
causes the new time signature symbol to be
printed without changing any of the other properties:
\relative c'' { \time 3/4 a16 a a a a a a a a a a a % Change time signature symbol but keep 3/4 beaming % due to unchanged underlying time signature \set Score.timeSignatureFraction = #'(12 . 16) a16 a a a a a a a a a a a \time 12/16 % Lose 3/4 beaming now \time has been changed a16 a a a a a a a a a a a }
Zusammengesetzte Taktarten
Ungerade Taktarten werden (wie etwa "5/8") werden oft als zusammengesetzte Taktarten interpretiert (bspw. "3/8 + 2/8"), in welchen zwei oder mehr Teiltakte unterschieden werden. LilyPond kann derartige Noten produzieren, indem entsprechende Taktarten gesetzt werden und die automatische Bebalkung angepasst wird.
#(define ((compound-time one two num) grob) (grob-interpret-markup grob (markup #:override '(baseline-skip . 0) #:number (#:line ( (#:column (one num)) #:vcenter "+" (#:column (two num))))))) \relative c' { \override Staff.TimeSignature #'stencil = #(compound-time "2" "3" "8") \time 5/8 #(override-auto-beam-setting '(end 1 8 5 8) 1 4) c8 d e fis gis c8 fis, gis e d c8 d e4 gis8 }
See also
Glossar: time signature
Notationsreferenz: Ancient time signatures, Time administration.
Schnipsel: Rhythms.
Referenz der Interna: TimeSignature, Timing_translator.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Time signature ] | [ Nach oben : Displaying rhythms ] | [ Unmetered music > ] |
Upbeats
Verkleinerte Takte, wie etwa ein Auftakt, werden mit dem
Befehl \partial
notiert, dessen Syntax lautet:
\partial Dauer
wobei Dauer die rhythmische Länger der Noten darstellt, die vor dem ersten vollständigen Takt gesetzt werden sollen:
\partial 4 e4 | a2. c,4 |
Das wird intern übersetzt nach:
\set Timing.measurePosition = -Länge der Dauer
Die Eigenschaft measurePosition
(Takt-Position) enthält
eine rationale Zahl,
die anezigt, wie groß der Abstand zum Taktanfang ist. Deshalb ist
sie eine negative Zahl; \partial 4
wird also intern übersetzt
zu: „Eine Viertel bleibt übrig vom ganzen Takt.“
See also
Glossar: anacrusis.
Notationsreferenz: Grace notes.
Schnipsel: Rhythms.
Referenz der Interna: Timing_translator.
Known issues and warnings
\partial
ist nur für den Anfang eines Stückes vorgesehen. Wenn der
Befehl innerhalb eines Stückes verwendet wird, können seltsame Warnungen
auftreten.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Upbeats ] | [ Nach oben : Displaying rhythms ] | [ Polymetric notation > ] |
Unmetered music
Taktlinien und Taktzahlen werden automatisch erzeugt. Für Musik
ohne Metrum hingegen (etwa Kadenzen) ist das jedoch nicht
erwünscht. Mit den Befehlen \cadenzaOn
und
\cadenzaOff
kann dieses Verhalten ausgeschaltet und
wieder angeschaltet werden.
c4 d e d \cadenzaOn c4 c d8 d d f4 g4. \cadenzaOff \bar "|" d4 e d c
Taktnummerierung wird am Ende der Kadenz wieder aufgenommen, als ob es die Kadenz nicht gegeben hätte:
% Show all bar numbers \override Score.BarNumber #'break-visibility = #all-visible c4 d e d \cadenzaOn c4 c d8 d d f4 g4. \cadenzaOff \bar "|" d4 e d c
Predefined commands
\cadenzaOn
,
\cadenzaOff
.
See also
Glossar: cadenza.
Schnipsel: Rhythms.
Known issues and warnings
LilyPond fügt Zeilen- und Seitenumbrüche nur an einer Taktlinie ein. Wenn die Kadenz nicht vor einem Umbruch endet, müssen Sie selber unsichtbare Taktlinien mit
\bar ""
einfügen, um anzuzeigen, wo umgebrochen werden darf.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Unmetered music ] | [ Nach oben : Displaying rhythms ] | [ Automatic note splitting > ] |
Polymetric notation
Polymetrische Notation ist unterstützt, entweder direkt, oder indem man das sichtbare Taktart-Symbol verändert und zusätzlich die Notendauern skaliert.
Systeme mit unterschiedlichen Taktarten, gleiche Taktlänge
Diese Art der Notation kann erstellt werden, indem für jedes
System eine identische Taktart eingestellt wird, aber manuell
für jeden Takt durch Einstellung von timeSignatureFraction
auf den gewünschten Bruch geändert und dann die Länge der
Noten entsprechenden skaliert wird, siehe auch Time signature.
Die Skalierung geschieht mit dem Befehl
\scaleDurations
, der auf ähnliche Weise wie \times
benutzt wird, aber keine Klammer über den Noten ausgibt. Siehe
auch Scaling durations.
In diesem Beispiel werden Noten mit den Taktarten 3/4, 9/8 und 10/8 parallel benutzt. Im zweiten System werden die gezeigten Dauern mit 2/3 multipliziert, da 2/3x9/8=3/4, und im dritten System werden die gezeigten Dauern mit 3/5 multipliziert, da 3/5x10/8=3/4. Oft wird es nötig sein, Balken manuell zu setzen, weil die Skalierung sich auch auf die automatische Bebalkung auswirkt.
\relative c' << \new Staff { \time 3/4 c4 c c | c c c | } \new Staff { \time 3/4 \set Staff.timeSignatureFraction = #'(9 . 8) \scaleDurations #'(2 . 3) \repeat unfold 6 { c8[ c c] } } \new Staff { \time 3/4 \set Staff.timeSignatureFraction = #'(10 . 8) \scaleDurations #'(3 . 5) { \repeat unfold 2 { c8[ c c] } \repeat unfold 2 { c8[ c] } | c4. c4. \times 2/3 { c8[ c c] } c4 } } >>
Systeme mit unterschiedlichen Taktarten, unterschiedliche Taktlänge
Jedes System kann auch eine eigene unabhängige Taktart erhalten.
Dazu muss der Timing_translator
und der
Default_bar_line_engraver
in den Staff
-Kontext
verschoben werden.
\layout { \context { \Score \remove "Timing_translator" \remove "Default_bar_line_engraver" } \context { \Staff \consists "Timing_translator" \consists "Default_bar_line_engraver" } } % Now each staff has its own time signature. \relative c' << \new Staff { \time 3/4 c4 c c | c c c | } \new Staff { \time 2/4 c4 c | c c | c c | } \new Staff { \time 3/8 c4. | c8 c c | c4. | c8 c c | } >>
Selected Snippets
Zusammengesetzte Taktarten
Ungerade Taktarten werden (wie etwa "5/8") werden oft als zusammengesetzte Taktarten interpretiert (bspw. "3/8 + 2/8"), in welchen zwei oder mehr Teiltakte unterschieden werden. LilyPond kann derartige Noten produzieren, indem entsprechende Taktarten gesetzt werden und die automatische Bebalkung angepasst wird.
#(define ((compound-time one two num) grob) (grob-interpret-markup grob (markup #:override '(baseline-skip . 0) #:number (#:line ( (#:column (one num)) #:vcenter "+" (#:column (two num))))))) \relative c' { \override Staff.TimeSignature #'stencil = #(compound-time "2" "3" "8") \time 5/8 #(override-auto-beam-setting '(end 1 8 5 8) 1 4) c8 d e fis gis c8 fis, gis e d c8 d e4 gis8 }
See also
Glossar: polymetric, polymetric time signature, meter.
Notationreferenz: Time signature, Scaling durations.
Schnipsel: Rhythms.
Referenz der Intera: TimeSignature, Timing_translator, Default_bar_line_engraver, Staff.
Known issues and warnings
Wenn unterschiedliche Taktarten paralell benutzt werden, werden Noten auf demselben musikalischen Moment horizontal auf die gleiche Position gesetzt. Die unterschiedlichen Taktlinien führen allerdings dazu, dass die Noten nicht ganz so regelmäßig gesetzt werden, wie es ohne unterschiedliche Taktarten der Fall wäre.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Polymetric notation ] | [ Nach oben : Displaying rhythms ] | [ Showing melody rhythms > ] |
Automatic note splitting
Lange Noten, die über Taktlinien hinüberreichen, können automatisch in übergebundene Noten aufgeteilt werden. Dieses Verhalten erreicht man, indem der Note_heads_engraver mit dem Completion_heads_engraver ausgetauscht wird. Im nächsten Beispiel werden Noten, die über die Taktlinie dauern, aufgeteilt und übergebunden.
\new Voice \with { \remove "Note_heads_engraver" \consists "Completion_heads_engraver" } { c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 }
Dieser Engraver teilt alle Noten auf, die über eine Taktlinie dauern und fügt Bindebögen hinzu. Er kann unter Anderem dann nützlich sein, wenn man komplexe Partituren auf Fehler überprüfen möchte: Wenn die Takte nicht vollständig gefüllt sind, zeigt die Überbindung genau an, wie viele Notenwerte noch in dem jeweiligen Takt fehlen.
See also
Glossar: tie
Handbuch zum Lernen: Engravers explained, Adding and removing engravers.
Schnipsel: Rhythms.
Referenz der Interna: Note_heads_engraver, Completion_heads_engraver, Forbid_line_break_engraver.
Known issues and warnings
Nicht alle Notenwerte (besonders wenn sie andere rhythmische Aufteilungen beinhalten) können exakt durch normale Noten und Punktierungen wiedergegeben werden. Der Engraver setzt aber trotzdem keine Triolen etc.
Completion_heads_engraver
wirkt sich nur auf Noten aus;
Pausen werden nicht aufgeteilt.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Automatic note splitting ] | [ Nach oben : Displaying rhythms ] | [ Beams > ] |
Showing melody rhythms
Manchmal soll nur der Rhythmus einer Melodie dargestellt werden. Das erreicht man mit einem Rhythmus-Notensystem. Alle Tonhöhen werden auf eine Linie reduziert und das System hat auch nur eine einzige Linie.
<< \new RhythmicStaff { \new Voice = "myRhythm" { \time 4/4 c4 e8 f g2 r4 g g f g1 } } \new Lyrics { \lyricsto "myRhythm" { This is my song I like to sing } } >>
Akkordnotation für Gitarren bezeichnet auch oft zusätzlich den
geschlagenen Rhythmus. Das kann notiert werden unter Verwendung
des Pitch_squash_engraver
und indem Tonhöhenimprovisation
eingeschaltet wird mit \improvisationOn
.
<< \new ChordNames { \chordmode { c1 f g c } } \new Voice \with { \consists Pitch_squash_engraver } \relative c'' { \improvisationOn c4 c8 c c4 c8 c f4 f8 f f4 f8 f g4 g8 g g4 g8 g c4 c8 c c4 c8 c } >>
Predefined commands
\improvisationOn
,
\improvisationOff
.
Selected Snippets
Guitar strum rhythms
In Guitarrennotation kann neben Melodie, Akkordbezeichnungen und Bunddiagrammen auch der Schlagrhythmus angegeben werden.
\include "predefined-guitar-fretboards.ly" << \new ChordNames { \chordmode { c1 f g c } } \new FretBoards { \chordmode { c1 f g c } } \new Voice \with { \consists "Pitch_squash_engraver" } { \relative c'' { \improvisationOn c4 c8 c c4 c8 c f4 f8 f f4 f8 f g4 g8 g g4 g8 g c4 c8 c c4 c8 c } } \new Voice = "melody" { \relative c'' { c2 e4 e4 f2. r4 g2. a4 e4 c2. } } \new Lyrics { \lyricsto "melody" { This is my song. I like to sing. } } >>
See also
Schnipsel: Rhythms.
Referenz der Interna: RhythmicStaff, Pitch_squash_engraver.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Showing melody rhythms ] | [ Nach oben : Rhythms ] | [ Automatic beams > ] |
1.2.4 Beams
Automatic beams | ||
Setting automatic beam behavior | ||
Manual beams | ||
Feathered beams |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Beams ] | [ Nach oben : Beams ] | [ Setting automatic beam behavior > ] |
Automatic beams
LilyPond setzt Balken (engl. beam) automatisch.
\time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8
Wenn diese automatischen Entscheidungen nicht gut genug sind, können
die Balken auch explizit eingegeben werden, siehe
Manual beams. Es können auch bestimmte
Balkenmuster, die sich vom Standard unterscheiden, definiert werden.
Die Standard-Regeln für die gebräuchlichsten Taktarten sind
in der Datei ‘scm/auto-beam.scm’ definiert. Wenn
dort keine Balkenregeln für die bestimmte Balkendauer in der
aktuellen Taktart vorhanden
sind, wird die Bebalkung geregelt von drei Kontexteigenschaften:
measureLength
, beatLength
und beatGrouping
.
Sowohl die Balkenregeln als auch diese Kontexteigenschaften
können geändert werden, siehe Setting automatic beam behavior.
Achtung: Wenn Balken eingesetzt werden, um Melismen in Gesang
anzuzeigen, müssen die automatische Bebalkung ausgeschaltet werden
mit dem Befehl |
Automatische Bebalkung kann mit dem Befehl \autoBeamOff
aufgehoben werden und mit dem Befehl \autoBeamOn
wieder
eingeschaltet werden.
c4 c8 c8. c16 c8. c16 c8 \autoBeamOff c4 c8 c8. c16 c8. \autoBeamOn c16 c8
Predefined commands
\autoBeamOff
,
\autoBeamOn
.
Selected Snippets
Balken über Zeilenumbrüche
Zeilenumbrüche sind normalerweise während Balken verboten. Das kann geändert werden.
\relative c'' { \override Beam #'breakable = ##t c8 c[ c] c[ c] c[ c] c[ \break c8] c[ c] c[ c] c[ c] c }
Balken für weit außeinander liegende Noten ändern
Balken mit Hälsen in unterschiedliche Richtungen werden automatisch
erstellt, wenn ein großer Sprung zwischen Tonhöhen gefunden wird. Dieses
Verhalten kann durch die auto-knee-gap
-Eigenschaft beeinflusst
werden. Ein derartiger Knie-Balken wird erstellt, wenn der Abstand größer
ist als der Wert von auto-knee-gap
plus der Dicke des Balkens
(was von der Notendauer und der Neigung des Balkens abhängt). Der
Standardwert von auto-knee-gap
ist 5.5 Notensystemabstände.
{ f8 f''8 f8 f''8 \override Beam #'auto-knee-gap = #6 f8 f''8 f8 f''8 }
See also
Notationsreferenz: Manual beams, Setting automatic beam behavior.
Installierte Dateien: ‘scm/auto-beam.scm’.
Schnipsel: Rhythms.
Referenz der Interna: Beam.
Known issues and warnings
Automatische Bebalkung von weit außeinander liegenden Noten (wobei der Balken als Knie erscheint) kann nicht mit versteckten Systemen benutzt werden. Siehe Hiding staves.
Balken können mit Notenköpfen und Versetzungszeichen in anderen Stimmen zusammenstoßen.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Automatic beams ] | [ Nach oben : Beams ] | [ Manual beams > ] |
Setting automatic beam behavior
Die Position und Länge der automatischen Balken wird bestimmt
von bestimmten Regeln, wie beschrieben in Automatic beams.
Es gibt zwei einander ausschließende Arten, diese Regeln zu
verändern. Mit der ersten Art verändert man Gruppen von
Noten, die einer bestimmten Taktart entsprechend mit Balken
versehen werden. Das muss manuell getan werden für die Taktarten,
für welche keine fertigen Regeln definiert worden sind. Die
zweite Methode verändert die Definitionen für die Endpunkte
der Balken und kann für jede Taktart eingesetzt werden. Diese
zweite Methode muss
eingesetzt werden für die Taktarten, für welche schon Regeln
definiert worden sind, es sei denn, alle Regeln wurden mit
revert
rückgängig gemacht. Regeln sind definiert für
die Taktarten 3/2, 3/4, 4/4, 2/4, 4/8, 4/16, 6/8, 9/8 und 12/8.
Die Gruppierung von Noten verändern
Wenn keine Regeln für die Beendung von Balken für die aktuelle
Balkendauer in der benutzen Taktart vorhanden sind, wird die
Bebalkung von drei Kontext-Eigenschaften kontrolliert:
measureLength
, beatLength
und beatGrouping
.
Diese Eigenschaften können in den Score
, Staff
oder
Voice
-Kontexten gesetzt werden, um ihre Wirkungsweise zu
begrenzen. Die Standardwerte werden gesetzt, wenn der \time
-Befehl
gelesen wird, sodass alle \set
-Befehle nach den \time
-Befehlen
geschrieben werden müssen.
Durch sie werden die Balken wie folgt bestimmt:
Balken können überall beginnen (außer ein Balken ist schon aktiv).
Balken enden zu den Werten, die beatGrouping
und
beatLength
bestimmten, nach folgenden Regeln:
- Wenn
beatGrouping
undbeatLength
den gleichen Wert wiemeasureLength
haben, wirdbeatGrouping
benutzt, um die Endpunkte der Balken zu bestimmen. - Wenn
beatGrouping
undbeatLength
nicht mitmeasureLength
übereinstimmen, wirdbeatLength
benutzt, um die Endpunkte der Balken zu bestimmen.
Achtung: Diese drei Eigenschaften werden für einen bestimmten
Balken nur dann aktiv, wenn für diese Balkendauer keine
Beendungsregeln für die benutzte Taktart definiert sind, oder
wenn alle diese Regeln mit |
Standardmäßig werden measureLength
(Taktlänge) und beatLength
von der Taktart entnommen, die
mit \time
gesetzt wurde. measureLength
hat
standardmäßig genau die gleiche Länge wie die Taktlänge und der
Standardwert für beatLength
(Taktzeit-Länge) wird durch
den Nenner des Taktart-Bruches bestimmt.
Der Standardwert von beatGrouping
wird aus einer Tabelle
in der Datei ‘scm/music-functions.scm’ entnommen. Um
sie zu finden, siehe
Other sources of information.
Hier werden Taktzeiten-Gruppen für die Taktarten 5/8, 6/8, 8/8,
9/8 und 12/8 definiert.
Sowohl measureLength
als auch beatLength
sind
Momente, Einheiten musikalischer Dauer. Eine Größe der
Art Moment wird durch die Scheme-Funktion
ly:make-moment
erstellt. Für mehr Information zu dieser
Funktion siehe Time administration.
beatGrouping
ist eine Liste an Integren, die die Anzahl
von Zählzeiten für jede Gruppe darstellen.
Selected Snippets
Notengruppen
Balkengruppen können mit der beatGrouping
-Eigenschaft geändert
werden:
\relative c'' { \time 5/16 #(override-auto-beam-setting '(end * * 5 16) 5 16) \set beatGrouping = #'(2 3) c8^"(2+3)" c16 c8 \set beatGrouping = #'(3 2) c8^"(3+2)" c16 c8 }
Specifying context with beatGrouping
By specifying the context, the effect of beatGrouping
can be
limited to the context specified, and the values which may have been
set in higher-level contexts can be overridden. The \set
commands must be placed after all \time
commands:
\score { \new Staff << \time 7/8 \new Voice { \relative c'' { \set Staff.beatGrouping = #'(2 3 2) a8 a a a a a a } } \new Voice { \relative c' { \voiceTwo \set beatGrouping = #'(1 3 3) f8 f f f f f f } } >> }
Using beatLength and beatGrouping
The property measureLength
determines where bar lines should be
inserted and, with beatLength
and beatGrouping
, how
automatic beams should be generated for beam durations and time
signatures for which no beam-ending rules are defined. This example
shows several ways of controlling beaming by setting these properties.
The explanations are shown as comments in the code.
\relative c'' { \time 3/4 % The default in 3/4 time is to beam in three groups % each of a quarter note length a16 a a a a a a a a a a a \time 12/16 % No auto-beaming is defined for 12/16 a16 a a a a a a a a a a a \time 3/4 % Change time signature symbol, but retain underlying 3/4 beaming \set Score.timeSignatureFraction = #'(12 . 16) a16 a a a a a a a a a a a % The 3/4 time default grouping of (1 1 1) and beatLength of 1/8 % are not consistent with a measureLength of 3/4, so the beams % are grouped at beatLength intervals \set Score.beatLength = #(ly:make-moment 1 8) a16 a a a a a a a a a a a % Specify beams in groups of (3 3 2 3) 1/16th notes % 3+3+2+3=11, and 11*1/16<>3/4, so beatGrouping does not apply, % and beams are grouped at beatLength (1/16) intervals \set Score.beatLength = #(ly:make-moment 1 16) \set Score.beatGrouping = #'(3 3 2 3) a16 a a a a a a a a a a a % Specify beams in groups of (3 4 2 3) 1/16th notes % 3+4+2+3=12, and 12*1/16=3/4, so beatGrouping applies \set Score.beatLength = #(ly:make-moment 1 16) \set Score.beatGrouping = #'(3 4 2 3) a16 a a a a a a a a a a a }
Sub-dividing beams
The beams of consecutive 16th (or shorter) notes are, by default, not
sub-divided. That is, the three (or more) beams stretch unbroken over
entire groups of notes. This behavior can be modified to sub-divide
the beams into sub-groups by setting the property
subdivideBeams
. When set, multiple beams will be sub-divided at
intervals defined by the current value of beatLength
by reducing
the multiple beams to just one beam between the sub-groups. Note that
beatLength
defaults to one over the denominator of the current
time signature if not set explicitly. It must be set to a fraction
giving the duration of the beam sub-group using the make-moment
function, as shown here:
\relative c'' { c32[ c c c c c c c] \set subdivideBeams = ##t c32[ c c c c c c c] % Set beam sub-group length to an eighth note \set beatLength = #(ly:make-moment 1 8) c32[ c c c c c c c] % Set beam sub-group length to a sixteenth note \set beatLength = #(ly:make-moment 1 16) c32[ c c c c c c c] }
Conducting signs, measure grouping signs
Options to group beats within a bar are available through the Scheme
function set-time-signature
, which takes three arguments: the
number of beats, the beat length, and the internal grouping of beats in
the measure. If the Measure_grouping_engraver
is included, the
function will also create MeasureGrouping
signs. Such signs
ease reading rhythmically complex modern music. In the example, the
9/8 measure is subdivided in 2, 2, 2 and 3. This is passed to
set-time-signature
as the third argument: '(2 2 2 3)
:
\score { \relative c'' { #(set-time-signature 9 8 '(2 2 2 3)) #(revert-auto-beam-setting '(end * * 9 8) 3 8) #(override-auto-beam-setting '(end 1 8 9 8) 1 4) #(override-auto-beam-setting '(end 1 8 9 8) 2 4) #(override-auto-beam-setting '(end 1 8 9 8) 3 4) g8 g d d g g a( bes g) | #(set-time-signature 5 8 '(3 2)) a4. g4 } \layout { \context { \Staff \consists "Measure_grouping_engraver" } } }
Die Endpunkte von Balken bestimmen
In üblichen Taktarten können automatisch gesetzte Balken an jeder
Note beginnen, aber nur an einigen bestimmten Positionen innerhalb
des Taktes beendet werden. Diese Positionen werden durch die
Eigenschaften in autoBeamSettings
bestimmt. Sie bestehen
aus einer Liste an Regeln, die bestimmen, wo Balken enden können.
Die Standardeinstellungen dieser automatischen Einstellungen
befinden sich in der Datei ‘scm/auto-beam.scm’. Um diese
Datei zu finden, siehe
Other sources of information.
Diese Methode muss benutzt werden, wenn die Einstellungen für die Balken in Taktarten verändert werden sollen, für welche schon Regeln existieren, es sei denn, alle diese Regeln wurden rückgängig gemacht. Die Methode ist auch in vielen anderen Taktarten gut anzuwenden, wenn die Taktart sich oft ändert, oder wenn die Balken unterschiedlich für unterschiedliche Balkendauern gesetzt werden sollen.
Um eine neue Regel zu der Liste hinzuzufügen, muss folgende Syntax verwendet werden:
#(override-auto-beam-setting '(Balken-Limit Balken-Zähler Balken-Nenner Taktart-Zähler Taktart-Nenner) Moment-Zähler Moment-Nenner [Kontext])
wobei
-
Balken-Limit
die Art der Balkenbegrenzung ist. Das kann entweder der Wertbegin
(Anfang) oderend
(Ende) sein, aber nurend
hat eine Auswirkung. -
Balken-Zähler/Balken-Nenner
ist die Balken-Dauer, auf die die Regel sich bezieht. Ein Balken hat per Definition die Dauer seiner kürzesten Note. Wenn sowohlBalken-Zähler
als auchBalken-Nenner
auf'*'
gesetzt werden, gilt die Regel für alle Dauern. -
Taktart-Zähler/Taktart-Nenner
bestimmen die Taktart, auf die die Regel sich bezieht. WennTaktart-Zähler
undTaktart-Nenner
auf'*'
gesetzt werden, gilt die Regel für alle Taktarten. -
Moment-Zähler/Moment-Nenner
ist die Position im Takt, an welcher der Balken aufhören soll. -
Kontext
ist optional und bestimmt den Kontext, in welchem die Änderungen vorgenommen werden sollen. Der Standard ist'Voice
.#(score-override-auto-beam-setting '(A B C D) E F)
ist gleichbedeutend mit#(override-auto-beam-setting '(A B C D) E F 'Score)
.
Wenn beispielsweise die automatischen Balken immer auf der ersten Viertel enden sollen, unabhängig von der Taktart oder Dauer des Balkens, kann
a8 a a a a a a a #(override-auto-beam-setting '(end * * * *) 1 4) a8 a a a a a a a
benutzt werden.
Balkenregeln können aber auch auf Notengruppen beschränkt werden, deren kürzeste Note einen bestimmten Wert hat:
\time 2/4 % end 1/16 beams for all time signatures at the 1/16 moment #(override-auto-beam-setting '(end 1 16 * *) 1 16) a16 a a a a a a a | a32 a a a a16 a a a a a | % end 1/32 beams for all time signatures at the 1/16 moment #(override-auto-beam-setting '(end 1 32 * *) 1 16) a32 a a a a16 a a a a a |
Balkenregeln können so definiert werden, dass sie nur in bestimmten Taktarten angewendet werden:
\time 5/8 % end beams of all durations in 5/8 time signature at the 2/8 moment #(override-auto-beam-setting '(end * * 5 8) 2 8) c8 c d d d \time 4/4 e8 e f f e e d d \time 5/8 c8 c d d d
Wenn mehrfache Stimmen benutzt werden, muss der Staff
-Kontext
angegeben werden, wenn die Balkenregeln auf alle Stimmen im System
angewendet werden sollen:
\time 7/8 % rhythm 3-1-1-2 % Context not specified - does not work correctly #(override-auto-beam-setting '(end * * 7 8) 3 8) #(override-auto-beam-setting '(end * * 7 8) 4 8) #(override-auto-beam-setting '(end * * 7 8) 5 8) << {a8 a a a16 a a a a8 a} \\ {f4. f8 f f f} >> % Works correctly with context specified #(override-auto-beam-setting '(end * * 7 8) 3 8 'Staff) #(override-auto-beam-setting '(end * * 7 8) 4 8 'Staff) #(override-auto-beam-setting '(end * * 7 8) 5 8 'Staff) << {a8 a a a16 a a a a8 a} \\ {f4. f8 f f f} >>
Achtung: Wenn eine unerwartete Bebalkung auftritt, schauen Sie zuerste die Balkeneinstellungen in ‘scm/auto-beam.scm’ nach, ob sich hier Überschneidungen ergeben, weil die Balkenenden, die dort definiert sind, auch noch weiterhin wirksam sind zusätzlich zu den von Ihnen definierten. |
Jede ungewollte oder störende Balkenbeendigung aus den Standard-Eingesllungen muss für Ihre Taktart rückgängig gemacht werden. Existierende automatische Bebalkungsregeln werden entfernt mit folgender Syntax:
#(revert-auto-beam-setting '(Balken-Limit Balken-Zähler Balken-Nenner Taktart-Zähler Taktart-Nenner) Moment-Zähler Moment-Nenner [Kontext])
wobei Balken-Limit
, Balken-Zähler
, Balken-Nenner
,
Taktart-Zähler
, Taktart-Nenner
, Moment-Zähler
,
Moment-Nenner
sowie Kontext
die gleichen sind
wie oben erklärt.
\time 4/4 a16 a a a a a a a a a a a a a a a % undo a rule ending 1/16 beams in 4/4 time at 1/4 moment #(revert-auto-beam-setting '(end 1 16 4 4) 1 4) a16 a a a a a a a a a a a a a a a
Die Regel in einer revert-auto-beam-setting
-Definition
muss exakt der ursprünglichen Regel entsprechen. Dabei werden
keine Platzhalter akzeptiert.
\time 1/4 #(override-auto-beam-setting '(end 1 16 1 4) 1 8) a16 a a a #(revert-auto-beam-setting '(end 1 16 * *) 1 8) % this won't revert it! a a a a #(revert-auto-beam-setting '(end 1 16 1 4) 1 8) % this will a a a a
Selected Snippets
Balkengruppen für 7/8-Takte
Es gibt keine automatischen Balkengruppen für 7/8-Takte. Wenn diese Taktart benötigt wird, müssen die Gruppierungen definiert werden. Um beispielsweise alle Noten in 2/8-3/8-2/8 aufzuteilen, müssen Balkenenden für 2/8 und 5/8 definiert werden:
\relative c'' { \time 7/8 % rhythm 2-3-2 a8 a a a a a a #(override-auto-beam-setting '(end * * 7 8) 2 8) #(override-auto-beam-setting '(end * * 7 8) 5 8) a8 a a a a a a }
Reverting default beam endings
To typeset beams grouped 3-4-3-2
in 12/8 it is necessary first
to override the default beam endings in 12/8, and then to set up the
new beaming endings:
\relative c'' { \time 12/8 % Default beaming a8 a a a a a a a a a a a % Revert default values in scm/auto-beam.scm for 12/8 time #(revert-auto-beam-setting '(end * * 12 8) 3 8) #(revert-auto-beam-setting '(end * * 12 8) 3 4) #(revert-auto-beam-setting '(end * * 12 8) 9 8) a8 a a a a a a a a a a a % Set new values for beam endings #(override-auto-beam-setting '(end * * 12 8) 3 8) #(override-auto-beam-setting '(end * * 12 8) 7 8) #(override-auto-beam-setting '(end * * 12 8) 10 8) a8 a a a a a a a a a a a }
Beam endings in Score context
Beam-ending rules specified in the Score
context apply to all
staves, but can be modified at both Staff
and Voice
levels:
\relative c'' { \time 5/4 % Set default beaming for all staves #(score-override-auto-beam-setting '(end * * 5 4) 3 8) #(score-override-auto-beam-setting '(end * * 5 4) 7 8) << \new Staff { c8 c c c c c c c c c } \new Staff { % Modify beaming for just this staff #(override-auto-beam-setting '(end * * 5 4) 6 8 'Staff) #(revert-auto-beam-setting '(end * * 5 4) 7 8 'Staff) c8 c c c c c c c c c } \new Staff { % Inherit beaming from Score context << { \voiceOne c8 c c c c c c c c c } % Modify beaming for this voice only \new Voice { \voiceTwo #(override-auto-beam-setting '(end * * 5 4) 6 8) #(revert-auto-beam-setting '(end * * 5 4) 7 8) a8 a a a a a a a a a } >> } >> }
Predefined commands
\autoBeamOff
,
\autoBeamOn
.
Known issues and warnings
Wenn eine Partitur aufhört, während ein automatischer Balken noch
nicht geschlossen ist und noch Noten erwartet, wird dieser letzte
Balken überhaupt nicht ausgegeben. Das gilt auch für polyphone
Stimmen, die mit << … \\ … >>
gesetzt wurden.
Wenn eine polyphone Stimme endet, während ein Balken noch Noten
erwartet, wird dieser Balken nicht gesetzt.
See also
Schnipsel: Rhythms.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Setting automatic beam behavior ] | [ Nach oben : Beams ] | [ Feathered beams > ] |
Manual beams
In einigen Fällen kann es nötig sein, den automatischen Algorithmus
für die Balken zu überschreiben. Die automatischen Balken werden
beispielsweise nicht über Pausen oder Taktlinien hinweg gesetzt, und
in Gesang werden die Balken oft nach dem Rhythmus des Textes und
nicht dem der Musik gesetzt.
Manuell definierte Balken werden mit den Zeichen [
und
]
(AltGr+8 bzw. 9) markiert.
{ r4 r8[ g' a r8] r8 g[ | a] r8 }
Einzelne Noten können mit dem Befehl \noBeam
markiert werden,
damit sie nicht mit einem Balken versehen werden.
\time 2/4 c8 c\noBeam c c
Noch bessere manuelle Kontrolle über die Balken kann durch Setzen
der Eigenschaften stemLeftBeamCount
und
stemRightBeamCount
erreicht werden. Sie bestimmen
die Anzahl von Balken, die rechts und links vom Hals der nächsten
Note gesetzt werden sollen. Wenn eine Eigenschaften gesetzt ist,
wird ihr Wert nur einmal eingesetzt und dann wieder auf Null gesetzt.
Im folgenden Beispiel hat das letzte f
nur einen Balken
an seiner linken Seite (der als Achtelbalken der gesamten
Gruppe gewertet wird).
a8[ r16 f g a] a8[ r16 \set stemLeftBeamCount = #2 \set stemRightBeamCount = #1 f \set stemLeftBeamCount = #1 g a]
Selected Snippets
Flat flags and beam nibs
Flat flags on lone notes and beam nibs at the ends of beamed figures
are both possible with a combination of stemLeftBeamCount
,
stemRightBeamCount
and paired []
beam indicators.
For right-pointing flat flags on lone notes, use paired []
beam
indicators and set stemLeftBeamCount
to zero (see Example 1).
For left-pointing flat flags, set stemRightBeamCount
instead
(Example 2).
For right-pointing nibs at the end of a run of beamed notes, set
stemRightBeamCount
to a positive value. And for left-pointing
nibs at the start of a run of beamed notes, set
stemLeftBeamCount
instead (Example 3).
Sometimes it may make sense for a lone note surrounded by rests to
carry both a left- and right-pointing flat flag. Do this with paired
[]
beam indicators alone (Example 4).
(Note that \set stemLeftBeamCount
is always equivalent to
\once \set
. In other words, the beam count settings are not
"sticky", so the pair of flat flags attached to the lone
c'16[]
in the last example have nothing to do with the
\set
two notes prior.)
\score { << % Example 1 \new RhythmicStaff { \set stemLeftBeamCount = #0 c16[] r8. } % Example 2 \new RhythmicStaff { r8. \set stemRightBeamCount = #0 c16[] } % Example 3 \new RhythmicStaff { c16 c \set stemRightBeamCount = #2 c16 r r \set stemLeftBeamCount = #2 c16 c c } % Example 4 \new RhythmicStaff { c16 c \set stemRightBeamCount = #2 c16 r c16[] r16 \set stemLeftBeamCount = #2 c16 c } >> }
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Manual beams ] | [ Nach oben : Beams ] | [ Bars > ] |
Feathered beams
Gespreizte Balken werden teilweise eingesetzt um anzuzeigen, dass
kleine Notengruppen in beschleunigendem oder verlangsamendem Tempo
gespielt werden sollen, ohne dass sich das Tempo des Stückes
verändert. Die Reichweite der gespreizten Balken muss manuell
mit [
und ]
angegeben werden und die Spreizung wird
kontrolliert, indem der Balken-Eigenschaft grow-direction
eine Richtung zugewiesen wird.
Wenn die Anordnung der Noten und die MIDI-Ausgabe das Ritardando
oder Accelerando, wie es die Spreizung angibt, reflektieren soll,
müssen die Noten als ein musikalischer Ausdruck notiert werden,
der von geschweiften Klammern umgeben ist und dem ein
featheredDurations
-(gespreizteDauern)-Befehl vorangestellt
ist, der das Verhaltnis der ersten und letzten Dauer definiert.
Die eckigen Klammern geben die Reichweite des Balkens an und die geschweiften Klammern zeigen, auf welche Noten sich die Veränderung der Dauern auswirkt. Normalerweise bezieht sich das auf die selbe Notengruppe, aber das ist nicht unbedingt erforderlich: beide Befehle sind unabhängig voneinander.
Im folgenden Beispiel nehmen die acht 16-Noten exakt die gleiche Zeit ein wie eine halbe Note, aber die erste Note ist halb so lang wie die letzte der Gruppe, und die Noten dazwischen werden stufenweise verlängert. Die ersten vier 32-Noten beschleunigen stufenweise das Tempo, während die darauffolgenden vier 32-Noten ein gleichmäßiges Tempo haben.
\override Beam #'grow-direction = #LEFT \featherDurations #(ly:make-moment 2 1) { c16[ c c c c c c c] } \override Beam #'grow-direction = #RIGHT \featherDurations #(ly:make-moment 2 3) { c32[ d e f] } % revert to non-feathered beams \override Beam #'grow-direction = #'() { g32[ a b c] }
Die Platzierung der Noten im Druckbild entspricht den Notendauern nur annähernd, aber die MIDI-Ausgabe ist exakt.
Known issues and warnings
Der \featherDurations
-Befehl funktioniert nur mit kurzen
Notenabschnitten, und wenn die Zahlen in den Brüchen klein
sind.
See also
Snippets: Rhythms.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Feathered beams ] | [ Nach oben : Rhythms ] | [ Bar lines > ] |
1.2.5 Bars
Bar lines | ||
Bar numbers | ||
Bar and bar number checks | ||
Rehearsal marks |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Bars ] | [ Nach oben : Bars ] | [ Bar numbers > ] |
Bar lines
Taktstriche trennen Takte voneinander, werden aber auch verwendet, um Wiederholungen anzuzeigen. Normalerweise werden sie automatisch nach Vorgabe der aktuellen Taktart eingefügt.
Die einfachen, automatisch eingefügten Taktstriche können mit dem
\bar
-Befehl geändert werden. Eine doppelter Tatkstrich etwa
wird normalerweise am Ende eines Stückes gesetzt:
e4 d c2 \bar "|."
Es ist kein Fehler, wenn die letzte Note in einem Takt nicht zum automatisch eingefügten Taktstrich aufhört: es wird angenommen, dass die Note im nächsten Takt weitergeht. Wenn aber eine ganze Reihe solcher überlappenden Takte auftritt, können die Noten gedrungen aussehen oder sogar über den Seitenrand hinausragen. Das kommt daher, dass Zeilenumbrüche nur dann vorgenommen werden, wenn ein vollständiger Takt auftritt, also ein Takt, an dem alle Noten vor dem Taktstrich zu Ende sind.
Achtung: Eine falsche Dauer kann bewirken, dass Zeilenumbrüche verhindert werden, woraus resultiert, dass die Noten entweder sehr stark gedrängt auf der Zeile notiert werden, oder die Zeile über den Seitenrand hinausragt. |
Zeilenumbrüche werden erlaubt, wenn ein Taktstrich manuell eingefügt wird, auch, wenn es sich um keinen vollständigen Takt handelt. Um einen Zeilenumbruch zu erlauben, ohne den Taktstrich auszugeben, kann
\bar ""
benutzt werden. Damit wird ein unsichtbarer Taktstrich an dieser Stelle eingefügt und damit ein Zeilenumbruch erlaubt (aber nicht erzwungen), ohne dass sich die Anzahl der Takte erhöhen würde. Um einen Zeilenumbruch zu erzwingen, siehe Line breaking.
Diese Art von Taktstrichen und auch andere besondere Taktstriche können manuell an jeder Stelle in der Partitur eingefügt werden. Wenn sie mit dem Ende eines Taktes übereinstimmen, wird der automatische Taktstrich durch den manuellen ersetzt. Diese manuellen Einfügungen haben keine Auswirkung auf die Zählung und Position der folgenden automatischen Taktstriche.
Manuell können der einfache Taktstrich und zusätzlich fünf Arten eines doppelten Taktstriches gesetzt werden:
f1 \bar "|" g \bar "||" a \bar ".|" b \bar ".|." c \bar "|.|" d \bar "|." e
Zusätzlich gibt es noch punktierte und gestrichelte Taktstriche:
f1 \bar ":" g \bar "dashed" a
und fünf unterschiedliche Wiederholungstaktstriche:
f1 \bar "|:" g \bar ":|:" a \bar ":|.|:" b \bar ":|.:" c \bar ":|" d
Auch wenn die Taktlinien, die Wiederholungen angeben, manuell eingefügt werden können, wird die Wiederholung dadurch nicht von LilyPond erkannt. Wiederholte Stellen werden besser notiert, indem man die Wiederholguns-Befehle einsetzt, die automatische die richtigen Taktlinien setzen. Das ist beschrieben inRepeats.
Zusätzlich kann noch "||:"
verwendet werden, dass sich
genauso wie "|:"
verhält, außer bei Zeilenumbrüchen, wo ein
doppeltre Taktstrich am Ende der Zeile ausgegeben wird und ein
öffnender Wiederholungsstrich am Anfang der nächsten Zeile.
\override Score.RehearsalMark #'padding = #3 c c c c \bar "||:" c c c c \break \bar "||:" c c c c
In Partituren mit vielen Systemen wird ein \bar
-Befehl in einem
System automatisch auf alle anderen Systeme angewendet. Die resultierenden
Taktstriche sind miteinander verbunden innerhalb einer Gruppe
(StaffGroup
) oder einem Klaviersystem
(PianoStaff
bzw. (GrandStaff
).
<< \new StaffGroup << \new Staff { e'4 d' \bar "||" f' e' } \new Staff { \clef bass c4 g e g } >> \new Staff { \clef bass c2 c2 } >>
Selected Snippets
Der Befehl \bar
Taktart ist eine Kurzform von:
\set Timing.whichBar =
Taktart. Immer, wenn
whichBar
auf einen Wert gesetzt wird, wird ein
Taktstrich dieses Typs erzeugt.
Der automatisch erzeugte Taktstrich ist "|"
. Das kann
jederzeit durch den Befehl \set Timing.defaultBarType =
Takstrichart geändert werden.
See also
Notationsreferenz: Line breaking, Repeats, Grouping staves.
Schnipsel: Rhythms.
Referenz der Interna: BarLine (created at Staff level), SpanBar (across staves), Timing_translator (for Timing properties).
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Bar lines ] | [ Nach oben : Bars ] | [ Bar and bar number checks > ] |
Bar numbers
Taktnummern werden standardmäßig zu Beginn eines jeden Systems
ausgegeben, ausgenommen ist die erste Zeile. Die Zahl selber
wird in der currentBarNumber
-Eigenschaft gespeichert, die
normalerweise für jeden Takt aktualisiert wird. Sie kann aber auch
manuell gesetzt werden:
c1 c c c \break \set Score.currentBarNumber = #50 c1 c c c
Selected Snippets
Taktnummern können in regelmäßigem Abstand ausgegeben werden,
anstatt dass sie nur am Beginn des Systems erscheinen. Um das
zu erreichen, muss die Standardeinstellung verändert werden, um
zu erlauben, dass Taktnummern an anderen Stellen als dem
Beginn von Systemen ausgegeben werden. Das wird mit der
Eigenschaft break-visibility
von BarNumber
vorgenommen.
Sie braucht drei Werte, die auf #t
(wahr) oder #f
(falsch) gestellt werden können, womit angegeben wird, ob die
Taktnummer an der entprechenden Stelle sichtbar ist. Die
Reihenfolge der Werte ist: Ende der Zeile, Mitte
der Zeile und Beginn der Zeile. Im folgenden
Beispiel werden die Taktlinien überall ausgegeben:
\override Score.BarNumber #'break-visibility = #'#(#t #t #t) \set Score.currentBarNumber = #11 \bar "" % Permit first bar number to be printed c1 c c c \break c c c c
Im nächsten Beispiel werden die Taktnummern nur für jeden zweiten Takt gesetzt, außer am Ende der Zeile:
\override Score.BarNumber #'break-visibility = #'#(#f #t #t) \set Score.currentBarNumber = #11 \bar "" % Permit first bar number to be printed % Print a bar number every second measure \set Score.barNumberVisibility = #(every-nth-bar-number-visible 2) c1 c c c c \break c c c c c
Die Größe der Taktnummer kann geändert werden. Das wird im folgenden
Beispiel gezeigt, welches auch illustriert, wie man Taktnummern
in Kästen oder Kreise einfasst und eine Alternative zeigt,
wie man #(#f #t #t)
für break-visibility
definieren
kann.
% Prevent bar numbers at the end of a line and permit them elsewhere \override Score.BarNumber #'break-visibility = #end-of-line-invisible % Increase the size of the bar number by 2 \override Score.BarNumber #'font-size = #2 \repeat unfold 3 { c1 } \bar "|" % Draw a box round the following bar number(s) \override Score.BarNumber #'stencil = #(make-stencil-boxer 0.1 0.25 ly:text-interface::print) \repeat unfold 3 { c1 } \bar "|" % Draw a circle round the following bar number(s) \override Score.BarNumber #'stencil = #(make-stencil-circler 0.1 0.25 ly:text-interface::print) \repeat unfold 4 { c1 } \bar "|."
Taktnummern sind standardmäßig links von ihrem Anker angeordnet. Der Anker ist meistens das linke Ende einer Zeile, oder, wenn die Zahlen innerhalb der Zeile gesetzt werden, die linke Taktlinie eines Taktes. Die Nummern können auch direkt auf der Taktlinie positioniert oder rechts davon gesetzt werden:
\set Score.currentBarNumber = #111 \override Score.BarNumber #'break-visibility = #'#(#t #t #t) % Increase the size of the bar number by 2 \override Score.BarNumber #'font-size = #2 % Print a bar number every second measure \set Score.barNumberVisibility = #(every-nth-bar-number-visible 2) c1 c1 % Center-align bar numbers \override Score.BarNumber #'self-alignment-X = #0 c1 c1 % Right-align bar numbers \override Score.BarNumber #'self-alignment-X = #-1 c1 c1
Taktnummern können vollständig entfernt werden, indem man den
Bar_number_engraver
aus dem Score
-Kontext entfernt.
\layout { \context { \Score \remove "Bar_number_engraver" } } \relative c''{ c4 c c c \break c4 c c c }
See also
Schnipsel: Rhythms.
Referenz der Interna: BarNumber.
Known issues and warnings
Taktnummern können mit der oberen Ecke der Klammer zu Beginn des
Systems zusammenstoßen. Um das zu verhindert, kann die
padding
-Eigenschaft von BarNumer
verwendet werden,
um die Zahl zu verschieben.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Bar numbers ] | [ Nach oben : Bars ] | [ Rehearsal marks > ] |
Bar and bar number checks
Die Taktüberprüfung hilft, Fehler in den Notendauern zu entdecken. Eine Taktüberprüfung wird mit dem Taktstrichsymbol „|“ (Taste AltGr+<) eingegeben. Immer, wenn LilyPond bei der Ausgabe des Notendrucks auf dieses Zeichen stößt, sollte hier in den Noten auch ein Taktstrich erscheinen. Wenn das nicht der Fall ist, wird eine Warnung ausgegeben. Im nächsten Beispiel resultiert die zweite Taktüberprüfung in einer Fehlermeldung.
\time 3/4 c2 e4 | g2 |
Taktüberprüfungen können auch in Gesangstexten verwendet werden:
\lyricmode { \time 2/4 Twin -- kle | Twin -- kle }
Besonders in mehrstimmiger komplizierter Musik können falschen Notenwerte die ganze Partitur durcheinander bringen. Es lohnt sich also, die Fehlersuche damit zu beginnen, nicht bestandene Taktüberprüfungen zu kontrollieren.
Wenn aufeinander folgende Taktüberprüfungen mit dem gleichen Abstand Fehler produzieren, wird eventuell nur die erste Warnung ausgegeben. Damit wird die Warnung auf den Ursprung de Fehlers fokussiert.
Es ist auch möglich, die Bedeutung des Symbols |
umzudefinieren, so dass hiermit eine andere Aktion als eine
Taktüberprüfung erreicht wird.
Das geschieht, indem man der Pipe (pipeSymbol
einen musikalischen
Ausdruck zuweist. Im nächsten Beispiel wird |
dazu
verwendet, eine doppelte Taktlinie auszugeben, woimmer man
das Zeichen auchsetzt. Gleichzeitig hört das Zeichen auf,
als Taktüberprüfung zu funktionieren.
pipeSymbol = \bar "||" { c'2 c'2 | c'2 c'2 c'2 | c'2 c'2 c'2 }
Wenn man größere Musikstücke kopiert, kann es hilfreich sein, wenn
LilyPond überprüft, ob die Taktnummer, in der Sie gerade kopieren,
mit der des Originales übereinstimmt. Das kann mit dem Befehl
\barNumberCheck
folgenderweise überprüft werden:
\barNumberCheck #123
Eine Warnung wird ausgegeben, wenn der interne Zähler
currentBarNumber
von LilyPond
nicht mit dem Wert 123 übereinstimmt.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Bar and bar number checks ] | [ Nach oben : Bars ] | [ Special rhythmic concerns > ] |
Rehearsal marks
Übungszeichen können mit dem \mark
-Befehl ausgegeben werden:
c1 \mark \default c1 \mark \default c1 \mark #8 c1 \mark \default c1 \mark \default
Der Buchstabe „I“ wird ausgelassen, was den allgemeinen Notensatzregeln entspricht. Wenn Sie dennoch den Buchstaben „I“ benutzen, wollen, müssen Sie
\set Score.markFormatter = #format-mark-alphabet
benutzen.
Das Zeichen wird automatisch erhöht, wenn Sie \mark
\default
schreiben, aber Sie können auch eine beliebige
Ganzzahl als Argument angeben. Der Wert, der gesetzt werden
soll, wird in der Eigenschaft rehearsalMark
gespeichert.
Der Stil der Übungszeichen wird von der Eigenschaft markFormatter
definiert. Das ist eine Funktion, die
das aktuelle Zeichen und den aktuellen Kontext als Argument
annimmt. Sie gibt dann ein Textbeschriftungsobjekt aus. Im
folgenden Beispiel ist markFormatter
so definiert, dass
eine Zahl ausgegeben wird. In den folgenden Takten
werden dann andere mögliche Einstellungen gezeigt.
\set Score.markFormatter = #format-mark-numbers c1 \mark \default c1 \mark \default \set Score.markFormatter = #format-mark-box-numbers c1 \mark \default \set Score.markFormatter = #format-mark-circle-numbers c1 \mark \default \set Score.markFormatter = #format-mark-circle-letters c1
Die Datei ‘scm/translation-functions.scm’ beinhaltet
die Definitionen für format-mark-numbers
(erstelle-Zeichen-Nummern),
format-mark-box-numbers
(erstelle-Zeichen-Kasten-Nummern),
format-mark-letters
(erstelle-Zeichen-Buchstaben) und
format-mark-box-letters
(erstelle-Zeichen-Kasten-Buchstaben). Sie können als Anleitung
für eigene Formatierungsfunktionen dienen.
Die Funktionen format-mark-barnumbers
,
format-mark-box-barnumbers
und
format-mark-circle-barnumbers
könenn eingesetzt werden,
um Taktnummern anstelle der fortlaufenden Zahlen bzw. Buchstaben
zu erhalten.
Andere Übungszeichenstile können auch manuell gesetzt werden:
\mark "A1"
Score.markFormatter
hat keine Auswirkungen auf solcherart
definierte Zeichen. Man kann aber auch mit \markup
Textbeschriftungsobjekte zu dem selbstdefinierten Zeichen
hinzufügen:
\mark \markup{ \box A1 }
Musikbuchstaben (wie etwa das Segno-Zeichen) können mit dem Befehl
\musicglyph
als ein
\mark
-Zeichen definierte werden:
c1 \mark \markup { \musicglyph #"scripts.segno" } c1 \mark \markup { \musicglyph #"scripts.coda" } c1 \mark \markup { \musicglyph #"scripts.ufermata" } c1
Siehe The Feta font, wo alle Symbole gezeigt sind, die
mit dem Befehl \musicglyph
ausgegeben werden können.
Übliche Veränderungen der Positionierung von Übungszeichen finden sich in Formatting text.
See also
Notationsreferenz: The Feta font, Formatting text.
Installierte Dateien:
‘scm/translation-functions.scm’ beinhaltet die Definition
von format-mark-numbers
und
format-mark-letters
. Sie können als Anleitung für eigene
Funktionen benutzt werden.
Schnipsel: Rhythms.
Referenz der Interna: RehearsalMark.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Rehearsal marks ] | [ Nach oben : Rhythms ] | [ Grace notes > ] |
1.2.6 Special rhythmic concerns
Grace notes | ||
Aligning to cadenzas | ||
Time administration |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Special rhythmic concerns ] | [ Nach oben : Special rhythmic concerns ] | [ Aligning to cadenzas > ] |
Grace notes
Verzierungen sind ausgeschriebene Verzierungen. Sie werden in einer kleineren Schriftgröße gesetzt und nehmen keine logische Zeit im Takt ein.
c4 \grace c16 c4 \grace { c16[ d16] } c2
LilyPond hat auch Unterstützung für zwei besondere Verzierungen, den Vorschlag und den Vorhalt. Der Vorschlag wird durch eine verkleinerte Note mit Schrägstrich und Bogen notiert. Der Vorhalt dagegen ist eine Verzierung, die einen bestimmten Notenwert der Hauptnote für sich beansprucht. Er wird als verkleinerte Note ohne Schrägstrich notiert.
\grace c8 b4 \acciaccatura d8 c4 \appoggiatura e8 d4 \acciaccatura { g16[ f] } e4
Die Position von Verzierungen ist zwischen Notensystemen synchronisiert. Im nächsten Beispiel stehen im einen System zwei 16-Noten für jede 8-Note des zweiten Systems:
<< \new Staff { e2 \grace { c16[ d e f] } e2 } \new Staff { c2 \grace { g8[ b] } c2 } >>
Wenn Sie eine Note mit einer Verzierung abschließen wollen, müssen
Sie den \afterGrace
-Befehl benutzen. Er benötigt zwei
Argumente: die Hauptnote und die Verzierung, die nach der
Hauptnote folgen soll:
c1 \afterGrace d1 { c16[ d] } c1
Damit wird die Verzierung mit einem Abstand von der Hauptnote
gesetzt, der 3/4 der Dauer der Hauptnote entspricht. Dieser
Standard kann durch Definition von afterGraceFraction
verändert werden. Das nächste Beispiel zeigt, wie sich
der Abstand verändert, wenn der Wert 3/4, 15/16 und 1/2 der
Hauptnote beträgt.
<< \new Staff { c1 \afterGrace d1 { c16[ d] } c1 } \new Staff { #(define afterGraceFraction (cons 15 16)) c1 \afterGrace d1 { c16[ d] } c1 } \new Staff { #(define afterGraceFraction (cons 1 2)) c1 \afterGrace d1 { c16[ d] } c1 } >>
Der Abstand zwischen der Hauptnote und der Verzierung kann auch mit unsichtbaren Noten beeinflusst werden. Im nächsten Beispiel wird die Verzierung mit einem Abstand von 7/8 zur Hauptnote gesetzt.
\new Voice { << { d1^\trill_( } { s2 s4. \grace { c16[ d] } } >> c1) }
Ein \grace
-Notenabschnitt wird nach besonderen Satzregeln
gesetzt, um z. B. kleinere Noten zu benutzen und die Richtung der
Hälse einzustellen. Veränderungen am Layout müssen also innerhalb
des Verzierungsausdrucks gesetzt werden, damit sie auch eine Auswirkung haben. Die Veränderungen müssen auch innerhalb des
Verzierungsausdrucks rückgängig gemacht werden. In diesem
Fall wird die Richtung der Hälse geändert und dann wieder der
Standard eingestellt:
\new Voice { \acciaccatura { \stemDown f16-> \stemNeutral } g4 e c2 }
Selected Snippets
The slash through the stem found in acciaccaturas can be applied in other situations:
\relative c'' { \override Stem #'stroke-style = #"grace" c8( d2) e8( f4) }
The layout of grace expressions can be changed throughout the
music using the function add-grace-property
. The following
example undefines the Stem
direction for this grace, so
that stems do not always point up.
\relative c'' { \new Staff { #(add-grace-property 'Voice 'Stem 'direction ly:stem::calc-direction) #(remove-grace-property 'Voice 'Stem 'direction) \new Voice { \acciaccatura { f16 } g4 \grace { d16[ e] } f4 \appoggiatura { a,32[ b c d] } e2 } } }
Another option is to change the variables startGraceMusic
,
stopGraceMusic
, startAcciaccaturaMusic
,
stopAcciaccaturaMusic
, startAppoggiaturaMusic
,
stopAppoggiaturaMusic
. The default values of these can be
seen in the file ly/grace-init.ly
. By redefining
them other effects may be obtained.
Grace notes may be forced to align with regular notes in other staves:
\relative c'' { << \override Score.SpacingSpanner #'strict-grace-spacing = ##t \new Staff { c4 \afterGrace c4 { c16[ c8 c16] } c4 r } \new Staff { c16 c c c c c c c c4 r } >> }
See also
Glossar: grace notes, acciaccatura, appoggiatura.
Installierte Dateien: ‘ly/grace-init.ly’.
Schnipsel: Rhythms.
Referenz der Interna: GraceMusic.
Known issues and warnings
Eine Partitur, die mit einem \grace
-Ausdruck beginnt, benötigt
eine explizit gesetzte neue Stimme (\new Voice
), sonst werden
Hauptnote und Verzierung auf verschiedenen Systemen gesetzt.
Ein Vorschlag (acciaccatura) mit mehreren Noten und Balken wird ohne den Schrägstrich gesetzt und sieht einem Vorhalt (appoggiatura) sehr ähnlich.
Die Synchronisation von Verzierungen kann auch zu Überraschungen führen. Auch andere Symbole der Systeme, wie Vorzeichen, Taktlinien usw., werden synchronisiert. Vorsicht ist geboten, wenn nur in bestimmten Systemen Verzierungen vorkommen:
<< \new Staff { e4 \bar "|:" \grace c16 d4 } \new Staff { c4 \bar "|:" d4 } >>
Dem kann abgeholfen werden, indem unsichtbare Verzierungsnoten der selben Länge in die anderen Systeme gesetzt werden. Im obigen Beispiel müsste also
<< \new Staff { e4 \bar "|:" \grace c16 d4 } \new Staff { c4 \bar "|:" \grace s16 d4 } >>
gesetzt werden.
Verzierungsabschnitte sollten nur innerhalb von sequentiellen musikalischen Ausdrücken benützt werden. Wenn sie ineinandergeschachtelt werden, kann es zu Fehlermeldungen oder Abstürzen kommen.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Grace notes ] | [ Nach oben : Special rhythmic concerns ] | [ Time administration > ] |
Aligning to cadenzas
In Orchesterpartituren stellen Kadenzen ein besonderes Problem dar: Wenn in der Partitur ein Instrument eine Kadenz spielt, die notiert wird, müssen die anderen Stimmen genau die entsprechende Anzahl Noten überspringen, damit sie nicht zu früh oder zu spät einsetzen.
Eine Lösung ist es, die Funktionen mmrest-of-length
oder
skip-of-length
zu benutzen. Diese Scheme-Funktionen
brauchen einen definierten Notenabschnitt (eine Variable)
als Argument und produzieren entweder Ganztaktpausen oder leere
Takte, die genauso lang sind wie der Notenabschnitt.
MyCadenza = \relative c' { c4 d8 e f g g4 f2 g4 g } \new GrandStaff << \new Staff { \MyCadenza c'1 \MyCadenza c'1 } \new Staff { #(ly:export (mmrest-of-length MyCadenza)) c'1 #(ly:export (skip-of-length MyCadenza)) c'1 } >>
See also
Glossar: cadenza.
Schnipsel: Rhythms.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Aligning to cadenzas ] | [ Nach oben : Special rhythmic concerns ] | [ Expressive marks > ] |
Time administration
Die Zeit in einer Partitur wird vom Timing_translator
verwaltet, der sich in den Standardeinstellungen im Score
-Kontext
befindet. Eine Parallelbezeichnung, Timing
, wird
dem Kontext hinzugefügt, in dem sich Timing_translator
befindet.
Die folgenden Eigenschaften von Timing
werden eingesetzt,
um die Zeit in Partituren zu verwalten.
-
currentBarNumber (aktuelle Taktnummer)
Die gerade aktuelle Taktzahl. Für ein Beispiel, das die Benutzung dieser Eigenschaft zeigt, siehe Bar numbers.
-
measureLength (Taktlänge)
Die Länge der Takte mit der aktuellen Taktart. In einem 4/4-Takt ist sie 1, in einem 6/8-Takt 3/4. Dieser Wert bestimmt, wann eine Taktlinie gezogen wird und wie automatische Balken erstellt werden sollen.
-
measurePosition (Taktposition)
Der Schlag im Takt zum aktuellen Moment. Dieser Wert wird zurückgesetzt, indem
measureLength
(die Taktlänge) abgezogen wird, wenn der Wert vonmeasureLength
erreicht oder überschritten wird. Wenn das passiert, wird der ZählercurrentBarNumber
(aktuelle Taktnummer) erhöht.-
timing (Zeitberechnung)
Wenn auf wahr gesetzt, werden die oben genannten Variablen zu jedem Zeitpunkt aktualisiert. Wenn auf falsch gesetzt, bleibt der Engraver unendlich lange im aktuellen Takt.
Zeitverwaltung kann geändert werden, indem man diese Variablen
direkt beeinflusst. Im nächsten Beispiel wird die normale
Taktart mit 4/4 angegeben, aber measureLength
wird
auf 5/4 gesetzt. An der Stelle 4/8 des dritten Taktes wird die
Taktposition (measurePosition
) um 1/8 auf 5/8 erhöht, so
dass der Takt im Ergebnis 1/8 kürzer ist. Die nächste Taktlinie
wird dann auch bei 9/8 gezogen und nicht bei 5/4.
\set Score.measureLength = #(ly:make-moment 5 4) c1 c4 c1 c4 c4 c4 \set Score.measurePosition = #(ly:make-moment 5 8) b4 b4 b8 c4 c1
Wie das Beispiel zeigt, erstellt ly:make-moment n m
die Dauer Zähler/Nenner einer ganzen Note. Zum Beispiel heißt
ly:make-moment 1 8
die Dauer einer Achtelnote, und
ly:make-moment 7 16
die Dauer von sieben Sechszehntelnoten.
See also
Notationsreferenz: Bar numbers, Unmetered music
Schnipsel: Rhythms.
Referenz der Interna: Timing_translator, Score
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Time administration ] | [ Nach oben : Musical notation ] | [ Attached to notes > ] |
1.3 Expressive marks
Dieser Abschnitt zeigt verschiedene Ausdrucksbezeichnungen, die zur Partitur hinzugefügt werden können.
1.3.1 Attached to notes | ||
1.3.2 Curves | ||
1.3.3 Lines |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Expressive marks ] | [ Nach oben : Expressive marks ] | [ Articulations and ornamentations > ] |
1.3.1 Attached to notes
Dieser Abschnitt erklärt, wie man Ausdrucksbezeichnungen erstellt, die an Noten gebunden sind: Artikulationszeichen, Ornamente und Dynamikzeichen. Es werden auch Methoden gezeigt, eigene Ausdrucksbezeichnungen zu erstellen.
Articulations and ornamentations | ||
Dynamics | ||
New dynamic marks |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Attached to notes ] | [ Nach oben : Attached to notes ] | [ Dynamics > ] |
Articulations and ornamentations
Eine Vielfalt an Symbolen kann über und unter den Noten erscheinen, um zu markieren, auf welche Art die Note ausgeführt werden soll. Hierzu wird folgende Syntax benutzt:
Note\Bezeichnung
Die möglichen Werte für Bezeichnung sind aufgelistet in List of articulations. Ein Beispiel:
c4\staccato c\mordent b2\turn c1\fermata
Einige dieser Artikulationszeichen haben eine Abkürzung, damit
es einfacher ist, sie zu schreiben. Die Abkürzung wird an die
Notenbezeichnung gehängt, wobei ihre Syntax aus einem Minuszeichen
-
besteht, gefolgt von dem Symbol, das dem
Artikultationszeichen zugeordnet ist. Es gibt diese Abkürzungen
für marcato,
stopped (gedämpft), tenuto,
staccatissimo, accent, staccato,
and portato. Die ihnen entsprchenden Symbole
werden also folgendermaßen notiert:
c4-^ c-+ c-- c-| c4-> c-. c2-_
Die Regeln für die standardmäßige Platzierung von Artikulationszeichen werden in der Datei ‘scm/script.scm’ definiert. Artikulationszeichen und Onrnamente können manuell über oder unter dem System gesetzt werden, siehe Direction and placement.
Selected Snippets
Die Standardwerte für Arkkikulationsabkürzungen verändern
Die Abkürzungen sind in der Datei ‘ly/script-init.ly’ definiert, wo
den Variablen dashHat
, dashPlus
, dashDash
,
dashBar
, dashLarger
, dashDot
und
dashUnderscore
Standardwerte zugewiesen werden. Diese Standardwerte
können verändert werden. Um zum Beispiel die Abkürzung
-+
(dashPlus
) mit dem Triller anstatt mit dem +-Symbol zu
assoziieren, muss der Wert trill
der Variable
dashPlus
zugewiesen werden:
\relative c'' { c1-+ } dashPlus = "trill" \relative c'' { c1-+ }
Die vertikale Anordnung von Beschriftungen kontrollieren
Die vertikale Anordnung von Beschriftungen wird mit der
'script-priority
-Eigenschaft kontrolliert. Um so kleiner die
Zahl, umso näher wird die Beschriftung in Bezug auf die Note gesetzt. In
diesem Beispiel hat das TextScript
-Objekt (das Kreuz) zuerst
die niedrigste Priorität, wird also auch am niedrigsten in dem ersten
Beispiel gesetzt. Im zweiten Fall hat der Praller (das Script
)
die niedrigste Priorität, darum wird er am nächsten zum System gesetzt.
Wenn zwei Objekte die gleiche Priorität haben, wird ihre Reihenfolge
anhand ihres Auftretens in der Quelldatei entschieden.
\relative c''' { \once \override TextScript #'script-priority = #-100 a2^\prall^\markup { \sharp } \once \override Script #'script-priority = #-100 a2^\prall^\markup { \sharp } }
Creating a delayed turn
Creating a delayed turn, where the lower note of the turn uses the
accidental, requires several overrides. The
outside-staff-priority
property must be set to #f
, as
otherwise this would take precedence over the avoid-slur
property
. The value of halign
is used to position the turn
horizontally.
\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" } } d4.) c8 }
See also
Glossar: tenuto, accent, staccato, portato.
Notationsreferenz: Direction and placement, List of articulations, Trills.
Installierte Dateien: ‘scm/script.scm’.
Schnipsel: Expressive marks.
Referenz der Interna: Script, TextScript.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Articulations and ornamentations ] | [ Nach oben : Attached to notes ] | [ New dynamic marks > ] |
Dynamics
Absolute Dynamikbezeichnung wird mit Befehlen nach den Noten
angezeigt, etwa c4\ff
. Die vordefinierten Befehle lauten:
\ppppp
, \pppp
, \ppp
,
\pp
, \p
, \mp
, \mf
, \f
, \ff
,
\fff
, \ffff
, \fp
, \sf
, \sff
,
\sp
, \spp
, \sfz
, and \rfz
. Die
Dynamikzeichen können manuell unter- oder oberhalb des Systems
platziert werden, siehe Direction and placement.
c2\ppp c\mp c2\rfz c^\mf c2_\spp c^\ff
Eine Crescendo-Klammer wird mit dem Befehl
\<
begonnen und mit \!
, einem absoluten Dynamikbefehl oder einer weiteren Crescento- oder
Decrescendo-Klammer beendet. Ein Decrescendo
beginnt mit \>
und wird auch beendet mit \!
,
einem absoluten Dynamikbefehl oder einem weiteren
Crescendo oder Decrescendo. \cr
und \decr
können
anstelle von \<
und
\>
benutzt werden. Die Befehle ergeben standardmäßig
Crescendo-Klammern.
c2\< c\! d2\< d\f e2\< e\> f2\> f\! e2\> e\mp d2\> d\> c1\!
Unsichtbare Pausen werden benötigt, um mehrere Zeichen einer Note zuzuweisen.
c4\< c\! d\> e\! << f1 { s4 s4\< s4\> s4\! } >>
In manchen Situationen kann auch der \espressivo
-Befehl
geeignet sein, ein An- und Abschwellen einer Note anzuzeigen.
c2 b4 a g1\espressivo
Crescendo und Decrescendo kann auch mit Text anstelle der
Klammern angezeigt werden. Gestrichelte Linien werden ausgegeben,
um die Dauer des Crescendos oder Decrescendos anzuzeigen. Die
vorgegebenen Befehle, mit denen dieses Verhalten erreicht
werden kann, sind \crescTextCresc
, \dimTextDecresc
,
\dimTextDecr
und \dimTextDim
. Die entsprechenden
Befehle \crescHairpin
und \dimHairpin
stellen
wieder die spitzen Klammern ein:
\crescTextCresc c2\< d | e f\! \dimTextDecresc e2\> d | c b\! \crescHairpin c2\< d | e f\! \dimHairpin e2\> d\!
Um neue absolute Dynamikzeichen oder Text, der mit ihnen angeordnet wird, zu erstellen, siehe New dynamic marks.
Vertikale Position der Zeichen wird von der Funktion DynamicLineSpanner verwaltet.
Predefined commands
\dynamicUp
,
\dynamicDown
,
\dynamicNeutral
,
\crescTextCresc
,
\dimTextDim
,
\dimTextDecr
,
\dimTextDecresc
,
\crescHairpin
,
\dimHairpin
.
Selected Snippets
Das Verhalten von Crescendo-Klammern an Taktlinien beeinflussen
Wenn die Note, an welcher eine Crescendo-Klammer endet, die erste Note
eines Taktes ist, wird die Klammer an der vorhergehenden Tatklinie
beendet. Dieses Verhalten kann auch mit der Eigenschaft
'to-barline
geändert werden:
\relative c'' { e4\< e2. e1\! \override Hairpin #'to-barline = ##f e4\< e2. e1\! }
Die Mindestlänge von Crescendo-Klammern bestimmen
Wenn Crescendo-Klammern zu kurz sind, können sie verlängert werden, indem
die minimum-length
-Eigenschaft des Hairpin
-Objektes
verändert wird.
\relative c'' { c4\< c\! d\> e\! \override Hairpin #'minimum-length = #5 << f1 { s4 s\< s\> s\! } >> }
Crescendo Klammern al niente schreiben
Crescendo-Klammern können mit einem kleinen Kreis vor der Spitze
notiert werden (al niente = bis zum Nichts), indem die
circled-tip
-Eigenschaft des Hairpin
-Objekts auf
#t
gesetzt wird.
\relative c'' { \override Hairpin #'circled-tip = ##t c2\< c\! c4\> c\< c2\! }
Vertikale Ausrichtung von Dynamik und Textbeschriftung beeinflussen
Indem man die 'Y-extent
-Eigenschaft auf einen passenden Wert setzt,
können alle DynamicLineSpanner
-Objekte (Crescendo-Klammern und
Dynamik-Texte) (hairpins and dynamic texts) unabhängig von ihrer
wirklichen Ausdehnung an einem gemeinsamen Referenzpunkt ausgerichtet werden.
Auf diese Weise ist jedes Element vertikal ausgerichtet und der Notensatz
sieht ansprechender aus.
Die gleiche Idee wird benutzt, um Textbeschriftungen an ihrer Grundlinie auszurichten.
music = \relative c'' { c2\p^\markup { gorgeous } c\f^\markup { fantastic } c4\p c\f\> c c\!\p } { \music \break \override DynamicLineSpanner #'staff-padding = #2.0 \override DynamicLineSpanner #'Y-extent = #'(-1.5 . 1.5) \override TextScript #'Y-extent = #'(-1.5 . 1.5) \music }
Crescendo-Linien von Dynamik-Texten unterdrücken
Dynamik-Texte (wie cresc. und dim.) werden mit einer gestrichelten Linie gesetzt, die ihre Dauer anzeigt. Diese Linie kann auf foldenge Weise unterdrückt werden:
\relative c'' { \override DynamicTextSpanner #'dash-period = #-1.0 \crescTextCresc c1\< | d | b | c\! }
Text und Strecker-Stile für Dynamik-Texte ändern
Der Text, der für Crescendo und Decrescendo gestzt wird, kann geändert
werden, indem man die Eigenschaften crescendoText
und
decrescendoText
verändert. Der Stil des Streckers kann auch
geändert werden, indem die 'style
-Eigenschaft des
DynamicTextSpanner
beeinflusst wird. Der Standardwert ist
'hairpin
, ander Möglichkeiten sind 'line
, 'dashed-line
und 'dotted-line
:
\relative c'' { \set crescendoText = \markup { \italic { cresc. poco } } \set crescendoSpanner = #'text \override DynamicTextSpanner #'style = #'dotted-line a2\< a a2 a a2 a a2 a\mf }
See also
Glossar: al niente, crescendo, decrescendo, hairpin. Handbuch zum Lernen: Articulation and dynamics.
Notationsreferenz: Direction and placement, New dynamic marks, What goes into the MIDI output?, Controlling MIDI dynamics.
Schnipsel: Expressive marks.
Referenz der Interna: DynamicText, Hairpin, DynamicLineSpanner.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Dynamics ] | [ Nach oben : Attached to notes ] | [ Curves > ] |
New dynamic marks
Die einfachste ARt, eigene Dynamikbezeichnungen zu erstellen,
ist die Benutzung von \markup
-(Textbeschriftungs)-Objekten.
moltoF = \markup { molto \dynamic f } \relative c' { <d e>16_\moltoF <d e> <d e>2.. }
Mit einer Textbeschriftung können editorische Dynamikzeichen (in runden oder eckigen Klammern) erstellt werden. Die Syntax für den Textbeschriftungsmodus wird erklärt in Formatting text.
roundF = \markup { \center-align \concat { \bold { \italic ( } \dynamic f \bold { \italic ) } } } boxF = \markup { \bracket { \dynamic f } } \relative c' { c1_\roundF c1_\boxF }
Einfache, mittig gesetzte Dynamikzeichen können schnell mit der
make-dynamic-script
-Funktion erstellt werden. Die
Schriftart für Dynamikzeichen enthält nur die Buchstaben
f,m,p,r,s
sowie z
.
sfzp = #(make-dynamic-script "sfzp") \relative c' { c4 c c\sfzp c }
Allgemein gesagt kann make-dynamic-script
jegliches
Textbeschriftungsobjekt als Argument haben. Im nächsten
Beispiel wird die vertikale Ausrichtung von den Beschriftungen
(engl. markup) und den spitzen Klammern an der selben Linie
durch make-dynamic-script
gewährleistet, wenn beide
an die selbe Note angehängt werden.
roundF = \markup { \center-align \concat { \normal-text { \bold { \italic ( } } \dynamic f \normal-text { \bold { \italic ) } } } } boxF = \markup { \bracket { \dynamic f } } roundFdynamic = #(make-dynamic-script roundF) boxFdynamic = #(make-dynamic-script boxF) \relative c' { c4_\roundFdynamic\< d e f g,1_\boxFdynamic }
Anstelle dessen kann auch die Scheme-Form des Beschriftungs-Modus verwendet werden. Seine Syntax ist erklärt in Markup construction in Scheme.
moltoF = #(make-dynamic-script (markup #:normal-text "molto" #:dynamic "f")) \relative c' { <d e>16 <d e> <d e>2..\moltoF }
Die Auswahl von Schriftarten in Textbeschriftungen ist erklärt in Selecting font and font size.
See also
Notationsreferenz: Formatting text, Selecting font and font size, Markup construction in Scheme, What goes into the MIDI output?, Controlling MIDI dynamics.
Schnipsel: Expressive marks.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < New dynamic marks ] | [ Nach oben : Expressive marks ] | [ Slurs > ] |
1.3.2 Curves
Dieser Abschnitt erklärt, wie man verschiedene gebogene Ausdrucksbezeichnungen erstellt: Legato- und Phrasierungsbögen, Atemzeichen und Glissandos zu unbestimmten Tonhöhen.
Slurs | ||
Phrasing slurs | ||
Breath marks | ||
Falls and doits |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Curves ] | [ Nach oben : Curves ] | [ Phrasing slurs > ] |
Slurs
Ein Legatobogen (engl. slur) zeigt an, dass die Noten legato gespielt werden sollen. Er wird mit Klammern hinter den Notenwerten notiert.
f4( g a) a8 b( a4 g2 f4) <c e>2( <b d>2)
Legatobögen können manuell ober- oder unterhalb des Notensystems besetzt werden, siehe Direction and placement.
c2( d) \slurDown c2( d) \slurNeutral c2( d)
Gleichzeitige, überlappende Legatobögen sind nicht erlaubt, aber ein Phrasierungsbogen kann einen Legatobogen überlappen. Damit können zwei Bögen gleichzeitig ausgegeben werden. Siehe auch Phrasing slurs.
Legatobögen können durchgehend, gepunket oder gestrichelt dargestellt werden. Standard ist der durchgehende Bogen:
c4( e g2) \slurDashed g4( e c2) \slurDotted c4( e g2) \slurSolid g4( e c2)
Predefined commands
\slurUp
,
\slurDown
,
\slurNeutral
,
\slurDashed
,
\slurDotted
,
\slurSolid
.
Selected Snippets
Doppelte Bögen für Legato-Akkorde benutzen
Einige Komponisten schreiben doppelte Bögen, wenn Legato-Akkorde notiert
werden. Das kann mit der Eigenschaft doubleSlurs
erreicht werden.
\relative c' { \set doubleSlurs = ##t <c e>4( <d f> <c e> <d f>) }
Positioning text markups inside slurs
Text markups need to have the outside-staff-priority
property
set to false in order to be printed inside slurs.
\relative c'' { \override TextScript #'avoid-slur = #'inside \override TextScript #'outside-staff-priority = ##f c2(^\markup { \halign #-10 \natural } d4.) c8 }
See also
Glossar: slur.
Handbuch zum Lernen: On the un-nestedness of brackets and ties.
Notationsreferenz: Direction and placement, Phrasing slurs.
Schnipsel: Expressive marks.
Referenz der Interna: Slur.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Slurs ] | [ Nach oben : Curves ] | [ Breath marks > ] |
Phrasing slurs
Ein Phrasierungsbogen verbindet Noten und wird verwendet, um einen
musikalischen Ausdruck anzuzeigen. Er wird mit den Befehlen
\(
und \)
eingegeben.
c4\( d( e) f( e2) d\)
Im typographischen Sinne verhalten sich Phrasierungsbögen genauso wie
Legatobögen. Sie werden aber als eigene Objekte behandelt. Ein
\slurUp
hat also keine Auswirkung auf die Phrasierungsbögen.
Phrasierungsbögen können manuell oberhalb oder unterhalb des
Notensystems gesetzt werden, siehe
Direction and placement.
c4\( g' c,( b) | c1\) \phrasingSlurUp c4\( g' c,( b) | c1\)
Simultane oder überlappende Phrasierungsbögen sind nicht erlaubt.
Phrasierungsbögen können durchgehend, gepunket oder gestrichelt dargestellt werden. Standard ist der durchgehende Bogen:
c4\( e g2\) \phrasingSlurDashed g4\( e c2\) \phrasingSlurDotted c4\( e g2\) \phrasingSlurSolid g4\( e c2\)
Predefined commands
\phrasingSlurUp
,
\phrasingSlurDown
,
\phrasingSlurNeutral
,
\phrasingSlurDashed
,
\phrasingSlurDotted
,
\phrasingSlurSolid
.
See also
Handbuch zum Lernen: On the un-nestedness of brackets and ties.
Notationsreferenz: Direction and placement.
Schnipsel: Expressive marks.
Referenz der Interna: PhrasingSlur.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Phrasing slurs ] | [ Nach oben : Curves ] | [ Falls and doits > ] |
Breath marks
Atemzeichen werden mit dem Befehl \breathe
eingegeben.
c2. \breathe d4
Musikalische Zeichen für Atemzeichen in Alter Notation, auch Divisiones genannt, sind unterstützt. Für Einzelheiten siehe Divisiones.
Selected Snippets
Das Atemzeichen-Symbol verändern
Das Schriftzeichen für das Atemzeichen kann verändert werden, indem
die Text-Eigenschaft des BreathingSign
-Layoutobjekts mit einer
beliebigen Textbeschriftung definiert wird.
\relative c'' { c2 \override BreathingSign #'text = \markup { \musicglyph #"scripts.rvarcomma" } \breathe d2 }
Eine Zäsur einfügen
Zäsurzeichen können erstellt werden, indem die 'text
-Eigenschaft
des BreathingSign
-Objektes verändert wird. Ein gekrümmtes
Zäsurzeichen ist auch möglich.
\relative c'' { \override BreathingSign #'text = \markup { \musicglyph #"scripts.caesura.straight" } c8 e4. \breathe g8. e16 c4 \override BreathingSign #'text = \markup { \musicglyph #"scripts.caesura.curved" } g8 e'4. \breathe g8. e16 c4 }
See also
Glossar: caesura.
Notationsreferenz: Divisiones.
Schnipsel: Expressive marks.
Referenz der Interna: BreathingSign.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Breath marks ] | [ Nach oben : Curves ] | [ Lines > ] |
Falls and doits
Gleiten nach oben und unten kann mit dem Befehl \bendAfter
notiert werden. Die Richtung des Glissandos wird mit einem
Plus oder Minus (nach oben bzw. nach unten) angezeigt. Die
Zahl zeigt die Intervallgröße an, über die sich das Glissando nach
der Note erstreckt.
c2-\bendAfter #+4 c2-\bendAfter #-4 c2-\bendAfter #+8 c2-\bendAfter #-8
Das Minuszeichen (-
) direkt vor dem \bendAfter
-Befehl
ist notwendig um unbestimmte Glissandos zu notieren.
Selected Snippets
Das Aussehen von unbestimmten Glissandi anpassen
Die shortest-duration-space
-Eigenschaft kann verändert werden, um
das Aussehen von unbestimmten Glissandi anzupassen.
\relative c'' { \override Score.SpacingSpanner #'shortest-duration-space = #4.0 c2-\bendAfter #+5 c2-\bendAfter #-3 c2-\bendAfter #+8 c2-\bendAfter #-6 }
See also
Schnipsel: Expressive marks.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Falls and doits ] | [ Nach oben : Expressive marks ] | [ Glissando > ] |
1.3.3 Lines
Dieser Abschnitt zeigt, wie man verschiedene Ausdrucksbezeichnungen erstellt, die sich linear erstrecken: Glissando, Arppegio und Triller.
Glissando | ||
Arpeggio | ||
Trills |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Lines ] | [ Nach oben : Lines ] | [ Arpeggio > ] |
Glissando
Ein Glissando wird
mit dem Befehl \glissando
auf eine Note folgend notiert:
g2\glissando g' c2\glissando c,
Verschiedene Glissando-Stile sind möglich. Für Einzelheiten siehe Line styles.
Selected Snippets
Moderne Glissandi
Ein modernes Glissando ohne eine Endnote kann gesetzt werden, indem eine Kadenz eingesetzt wird und die Endnote unsichtbar gemacht wird.
\relative c'' { \time 3/4 \override Glissando #'style = #'zigzag c4 c \cadenzaOn c4\glissando \hideNotes c,,4 \unHideNotes \cadenzaOff \bar "|" }
See also
Glossar: glissando.
Notationsreferenz: Line styles.
Schnipsel: Expressive marks.
Referenz der Interna: Glissando.
Known issues and warnings
Printing text over the line (such as gliss.) is not supported.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Glissando ] | [ Nach oben : Lines ] | [ Trills > ] |
Arpeggio
Ein Arpeggio als Zeichen, dass ein Akkord gebrochen gespielt werden soll,
kann mit dem Befehl \arpeggio
hinter der
Akkord-Konstruktion erzeugt werden.
<c e g c>1\arpeggio
Unterschiedliche Arpeggio-Typen können benutzt werden.
\arpeggioNormal
stellt wieder das normale Verhalten
her:
<c e g c>2\arpeggio \arpeggioArrowUp <c e g c>2\arpeggio \arpeggioArrowDown <c e g c>2\arpeggio \arpeggioNormal <c e g c>2\arpeggio
Besondere Arpeggios mit Klammern können erstellt werden:
<c e g c>2 \arpeggioBracket <c e g c>2\arpeggio \arpeggioParenthesis <c e g c>2\arpeggio \arpeggioNormal <c e g c>2\arpeggio
Ein Arpeggio kann auch explizit ausgeschrieben werden, indem Überbindungsbögen benutzt werden. Für mehr Information siehe Ties.
Predefined commands
\arpeggio
,
\arpeggioArrowUp
,
\arpeggioArrowDown
,
\arpeggioNormal
,
\arpeggioBracket
,
\arpeggioParenthesis
.
Selected Snippets
Arpeggio über mehrere Systeme in anderen Kontexten
Arpeggio über mehrere Systeme können in anderen Kontexten als dem
PianoStaff
erstellt werden, wenn der Span_arpeggio_engraver
in den Score
-Kontext eingefügt wird.
\new PianoStaff \relative c'' << \set PianoStaff.connectArpeggios = ##t \new Staff { <c e g c>4\arpeggio <g c e g>4\arpeggio <e g c e>4\arpeggio <c e g c>4\arpeggio } \new Staff { \clef bass \repeat unfold 4 { <c,, e g c>4\arpeggio } } >>
Arpeggio zwischen Systemen in einem Klaviersystem erstellen
In einem Klaviersystem (PianoStaff
) ist es möglich, ein Arpeggio
zwischen beiden Systemen zu verbinden, indem die
PianoStaff.connectArpeggios
-Eigenschaft gesetzt wird.
\score { \new StaffGroup { \set Score.connectArpeggios = ##t << \new Voice \relative c' { <c e>2\arpeggio <d f>2\arpeggio <c e>1\arpeggio } \new Voice \relative c { \clef bass <c g'>2\arpeggio <b g'>2\arpeggio <c g'>1\arpeggio } >> } \layout { \context { \Score \consists "Span_arpeggio_engraver" } } }
Arpeggios zwischen unterschiedlichen Stimmen erzeugen
Ein Arpeggio kann zwischen Noten aus unterschidlichen Stimmen auf demselben
System gezogen werden, wenn der Span_arpeggio_engraver
in den
Staff
-Kontext verschoben wird:
\new Staff \with { \consists "Span_arpeggio_engraver" } \relative c' { \set Staff.connectArpeggios = ##t << { <e' g>4\arpeggio <d f> <d f>2 } \\ { <d, f>2\arpeggio <g b>2 } >> }
See also
Glossar: arpeggio.
Notationsreferenz: Ties.
Schnipsel: Expressive marks.
Referenz der Interna: Arpeggio, PianoStaff.
Known issues and warnings
Es ist nicht möglich, Arpeggios zwischen Systemen und solche, die sich
nur auf ein System erstrecken, zum gleichen Zeitpunkt in einem
Klaviersystem (PianoStaff
) zu benutzen.
Die Arpeggios im Klammer-Stil funktionieren nicht über mehrere Notensysteme.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Arpeggio ] | [ Nach oben : Lines ] | [ Repeats > ] |
Trills
Kurze Triller ohne eine Dauer werden nmit dem Befehl
\trill
notiert, siehe auch
Articulations and ornamentations.
Längere Triller mit einer Dauer werden mit den Befehlen
\startTrillSpan
zu
Beginn und \stopTrillSpan
am Ende erstellt.
d1~\startTrillSpan d1 c2\stopTrillSpan r2
Das nächste Beispiel zeigt Triller in Kombination mit einem Vorschlag. Die Syntax dieser Konstruktion und die Methode, wie man die Vorschläge genau positioniert, ist beschrieben in Grace notes.
c1 \afterGrace d1\startTrillSpan { c32[ d]\stopTrillSpan } e2 r2
Triller, die auf einer bestimmten Note ausgeführt werden sollen, können
mit dem Befehl pitchedTrill
notiert werden. Das erste
Argument ist die Hauptnote, das zweite die Note, auf der getrillert
wird. Sie wird als Note ohne Hals in Klammern ausgegeben.
\pitchedTrill e2\startTrillSpan fis d\stopTrillSpan
Im nächsten Beispiel ist der zweite Triller nicht eindeutig notiert, denn das Versetzungszeichen der Trillernote ist nicht ausgegeben. Man kann das Versetzungszeichen erzwingen. Der zweite Takt zeigt diese Methode:
\pitchedTrill eis4\startTrillSpan fis g\stopTrillSpan \pitchedTrill eis4\startTrillSpan fis g\stopTrillSpan \pitchedTrill eis4\startTrillSpan fis g\stopTrillSpan \pitchedTrill eis4\startTrillSpan fis! g\stopTrillSpan
Predefined commands
\startTrillSpan
,
\stopTrillSpan
.
See also
Glossar: trill.
Notationsreferenz: Articulations and ornamentations, Grace notes.
Schnipsel: Expressive marks.
Referenz der Interna: TrillSpanner.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Trills ] | [ Nach oben : Musical notation ] | [ Long repeats > ] |
1.4 Repeats
Wiederholung ist ein zentrales Konzept in der Musik, und es gibt eine ganze Vielzahl von Notationsmöglichkeiten für Wiederholungen. LilyPond unterstützt folgende Arten von Wiederholungen:
-
volta (Wiederholungsklammer)
Die wiederholte Musik wird nicht geschreiben, sondern zwischen zwei Wiederholungstaktstrichen eingeschlossen. Wenn die Wiederholung am Anfang eines Stückes beginnt, wird nur am Ende der Wiederholung eine Wiederholungstaktlinie gesetzt. Alternative Schlüsse (Volta) werden von links nach rechts mit Klammern gesetzt. Das ist die Standardnotationspraxis für Wiederholungen mit alternativen Schlüssen.
-
unfold (aufklappen)
Die wiederholte Musik wird ausgeschrieben, so oft, wie es durch Wiederholungszähler definiert wird. Das erspart Arbeit, wenn repititive Musik notiert wird.
-
percent (Prozent-Wiederholung)
Das sind Noten- oder Taktwiederholungen, sie sehen aus wie ein Schrägstrich bzw. wie ein Prozentzeichen.
-
tremolo
Das wird benutzt, um Tremolo-Wiederholungen am Notenhals zu notieren.
1.4.1 Long repeats | ||
1.4.2 Short repeats |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Repeats ] | [ Nach oben : Repeats ] | [ Normal repeats > ] |
1.4.1 Long repeats
Normal repeats | ||
Manual repeat marks | ||
Written-out repeats |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Long repeats ] | [ Nach oben : Long repeats ] | [ Manual repeat marks > ] |
Normal repeats
Die Syntax für normale Wiederholungen ist
\repeat Typ Wiederholungszähler musikAusdr
wobei musikAusdr ein musikalischer Ausdruck ist. Alternative
Schlüsse können mit \alternative
gesetzt werden. Damit die
alternativen Schlüsse von den wiederholten Noten abgegrenzt werden,
müssen sie in geschweiften Klammern zusammengefasst werden. Wenn
es mehr Wiederholungen gibt, als Alternativen angegeben sind, erhalten
die ersten Wiederholungen den ersten Schluss.
Normale Wiederholungen ohne alternative Schlüsse:
\repeat volta 2 { c4 d e f } c2 d \repeat volta 2 { d4 e f g }
Normale Wiederholungen mit alternativen Schlüssen:
\repeat volta 4 { c4 d e f } \alternative { { d2 e } { f2 g } } c1
Normale Wiederholungen mit Auftakt können auf zwei Arten notiert werden:
\partial 4 e | \repeat volta 4 { c2 d | e2 f | } \alternative { { g4 g g e } { a4 a a a | b2. } }
oder
\partial 4 \repeat volta 4 { e4 | c2 d | e2 f | } \alternative { { \partial 4*3 g4 g g } { a4 a a a | b2. } }
Bindebögen können auch an eine zweite Klammer angefügt werden:
c1 \repeat volta 2 { c4 d e f ~ } \alternative { { f2 d } { f2\repeatTie f, } }
Selected Snippets
Shortening volta brackets
By default, the volta brackets will be drawn over all of the
alternative music, but it is possible to shorten them by setting
voltaSpannerDuration
. In the next example, the bracket only
lasts one measure, which is a duration of 3/4.
\relative c'' { \time 3/4 c4 c c \set Score.voltaSpannerDuration = #(ly:make-moment 3 4) \repeat volta 5 { d4 d d } \alternative { { e4 e e f4 f f } { g4 g g } } }
Adding volta brackets to additional staves
The Volta_engraver
by default resides in the Score
context, and brackets for the repeat are thus normally only printed
over the topmost staff. This can be adjusted by adding the
Volta_engraver
to the Staff
context where the brackets
should appear; see also the "Volta multi staff" snippet.
<< \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } \new Staff \with { \consists "Volta_engraver" } { c'2 g' e' a' } \new Staff { \repeat volta 2 { c'1 } \alternative { c' } } >>
See also
Notationsreferenz: Bar lines, Modifying context plug-ins.
Schnipsel: Repeats.
Referenz der Interna: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic, UnfoldedRepeatedMusic.
Known issues and warnings
Eine ineinandergeschachtelte Wiederholung wie
\repeat … \repeat … \alternative
ist mehrdeutig, weil nicht klar ist, zu welchem \repeat
-Abschnitt
die \alternative
-Endung gehört. Diese Mehrdeutigkeit wird von
LilyPond aufgelöst, indem die alternative Endung immer zu der innersten
Wiederholung gehört. Um Klarheit zu schaffen, bietet es sich an, in solchen
Situationen Klammern zu benutzen.
Die Taktposition wird bei einer alternativen Endung nicht mitgeteilt, so
dass nach einer Wiederholung diese Information manuell angegeben werden
muss,
entweder durch setzen von Score.measurePosition
oder indem der
Befehl \partial
benutzt wird. Gleichermaßen werden auch
Bindebögen nicht wiederholt.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Normal repeats ] | [ Nach oben : Long repeats ] | [ Written-out repeats > ] |
Manual repeat marks
Achtung: Diese Methoden werden nur verwendet, um ungewöhnliche
Wiederholungskonstruktionen darzustellen und können sich unerwünscht
verhalten. In den meisten Fällen sollten Wiederholungen mit dem
Befehl |
Die Eigenschaft repeatCommands
kann verwendet werden, um das
Aussehen der Wiederholungen zu beeinflussen. Ihr Argument ist eine
Scheme-Liste an Wiederholungsbefehlen.
-
start-repeat
Setzt eine
|:
Taktlinie.c1 \set Score.repeatCommands = #'(start-repeat) d4 e f g c1
Der Notensatzpraxis folgend werden Wiederholungstaktstrichen nicht zu Beginn eines Stückes gesetzt.
-
end-repeat
Setzt eine
:|
Taktlinie.c1 d4 e f g \set Score.repeatCommands = #'(end-repeat) c1
-
(volta Zahl) ... (volta #f)
Setzt eine Volta-Klammer mit der Beschriftung Nummer. Die Volta-Klammer muss explizit beendet werden, sonst wird sie nicht ausgegeben.
f4 g a b \set Score.repeatCommands = #'((volta "2")) g4 a g a \set Score.repeatCommands = #'((volta #f)) c1
Mehrfache Wiederholungszeichen können an der selben Stelle vorkommen:
f4 g a b \set Score.repeatCommands = #'((volta "2, 5") end-repeat) g4 a g a c1 \set Score.repeatCommands = #'((volta #f) (volta "95") end-repeat) b1 \set Score.repeatCommands = #'((volta #f))
Text kann auch in der Volta-Klammer gesetzt werden. Der Text kann aus Zahlen oder einer Zahl oder einer Textbeschriftung bestehen, siehe Formatting text. Die einfachste Art Text zu benutzen ist, die Beschriftung zuerst zu definieren und dann die Beschriftung in einer Scheme-Liste einzufügen.
voltaAdLib = \markup { 1. 2. 3... \text \italic { ad lib. } } \relative c'' { c1 \set Score.repeatCommands = #(list(list 'volta voltaAdLib) 'start-repeat) c4 b d e \set Score.repeatCommands = #'((volta #f) (volta "4.") end-repeat) f1 \set Score.repeatCommands = #'((volta #f)) }
Selected Snippets
Printing a repeat sign at the beginning of a piece
A |:
bar line can be printed at the beginning of a piece, by
overriding the relevant property:
\relative c'' { \once \override Score.BreakAlignment #'break-align-orders = #(make-vector 3 '(instrument-name left-edge ambitus span-bar breathing-sign clef key-signature time-signature staff-bar custos span-bar)) \bar "|:" c1 d1 d4 e f g }
See also
Notationsreferenz: Bar lines, Formatting text.
Schnipsel: Repeats.
Referenz der Interna: VoltaBracket, RepeatedMusic, VoltaRepeatedMusic.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Manual repeat marks ] | [ Nach oben : Long repeats ] | [ Short repeats > ] |
Written-out repeats
Mit dem unfold
-Befehl können Wiederholungen eingesetzt werden,
um repitetive Musik zu notieren. Die Syntax ist
\repeat unfold Wiederholgunszähler musikAusdr
wobei musikAusdr ein musikalischer Ausdruck ist und Wiederholungszähler die Anzahl bezeichnet, mit der musikAusdr wiederholt wird.
c1 \repeat unfold 2 { c4 d e f } c1
Ausgeschriebene Wiederholungen können auch alternative Schlüsse haben. Wenn mehr Wiederholungen als alternative Schlüsse notiert werden, wird der erste Schluss für die ersten Wiederholungen benutzt.
c1 \repeat unfold 2 { g4 f e d } \alternative { { cis2 g' } { cis,2 b } } c1
See also
Schnipsel: Repeats.
Referenz der Interna: RepeatedMusic, UnfoldedRepeatedMusic.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Written-out repeats ] | [ Nach oben : Repeats ] | [ Percent repeats > ] |
1.4.2 Short repeats
Dieser Abschnitt zeigt, wie man kurze Wiederholungen notiert. Kurze Wiederholungen haben zwei grundlegende Formen: Wiederholungen von einer Note bis zu zwei Takten, die mit Schrägstrichen oder Prozentzeichen dargestellt werden, und Tremolos.
Percent repeats | ||
Tremolo repeats |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Short repeats ] | [ Nach oben : Short repeats ] | [ Tremolo repeats > ] |
Percent repeats
Kurze wiederholte Musikphrasen werden unterstützt. Dabei werden die Noten einmal gedruckt und dann durch ein spezielles Zeichen ersetzt. Phrasen, die kürzer als ein Takt sind, durch einen Schrägstrich dargestellt, Phrasen von ein oder zwei Takten Dauer werden durch ein dem Prozentzeichen ähnlichen Zeichen markiert. Die Syntax lautet
\repeat percent Wiederholungszahl musikAusdr
wobei musikAusdr ein musikalischer Ausdruck ist.
\repeat percent 4 { c4 } \repeat percent 2 { b4 a g f } \repeat percent 2 { c2 es | f4 fis g c | }
Selected Snippets
Percent repeat counter
Measure repeats of more than two repeats can get a counter when the convenient property is switched, as shown in this example:
\relative c'' { \set countPercentRepeats = ##t \repeat percent 4 { c1 } }
Percent repeat count visibility
Percent repeat counters can be shown at regular intervals by setting
the context property repeatCountVisibility
.
\relative c'' { \set countPercentRepeats = ##t \set repeatCountVisibility = #(every-nth-repeat-count-visible 5) \repeat percent 10 { c1 } \break \set repeatCountVisibility = #(every-nth-repeat-count-visible 2) \repeat percent 6 { c1 d1 } }
Isolated percent repeats
Isolated percents can also be printed. This is done by entering a multi-measure rest with a different print function:
\relative c'' { \override MultiMeasureRest #'stencil = #ly:multi-measure-rest::percent \override MultiMeasureRest #'thickness = #0.48 R1 }
See also
Glossar: percent repeat, simile.
Schnipsel: Repeats.
Referenz der Interna: RepeatSlash, PercentRepeat, DoublePercentRepeat, DoublePercentRepeatCounter, PercentRepeatCounter, PercentRepeatedMusic.
Known issues and warnings
Nur drei Arten von Prozent-Wiederholungen sind unterstützt: ein einfacher Schrägstrich, der einen Taktschlag darstellt (unabhängig von der wirklichen Dauer der wiederholten Noten), ein einfacher Schrägstrich mit Punkten, der einen ganzen wiederholten Takt darstellt und zwei Schrägstriche mit Punkten über eine Taktlinie gedruckt, der zwei ganze Takte darstellt. Weder können mehrere Schrägstriche für Taktwiederholungen von Sechzehntelnoten dargestellt werden, noch zwei Striche mit Punkten für nur einen Takt, der aus unterschiedlichen Notenwerten besteht.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Percent repeats ] | [ Nach oben : Short repeats ] | [ Simultaneous notes > ] |
Tremolo repeats
Tremolos können in zwei Arten notiert werden: als Wechsel zwischen zwei Noten oder Akkorden oder als schnelle Wiederholung einer einzigen Note. Tremolos, die als Wechsel realisiert werden, werden dargestellt, indem Balken zwischen die Noten gesetzt werden, Tremolos, die eine schnelle Wiederholung darstellen, haben Balken oder Schrägstriche am Hals einer einzigen Note.
Um Tremolobalken zwischen Noten zu setzen, kann der \repeat
-Befehl
mit dem Tremolo-Stil benutzt werden:
\repeat tremolo 8 { c16 d } \repeat tremolo 6 { c16 d } \repeat tremolo 2 { c16 d }
Die \repeat tremolo
-Syntax braucht genau zwei Noten innerhalb
der geschweiften Klammern, und die Anzahl der Wiederholungen muss
einem Wert entsprechen, der mit einfachen oder punktierten Noten
ausgedrückt werden kann. \repeat tremolo 7
funktioniert und
setzt Tremolo für die Dauer einer Doppeltpunktierten, aber
\repeat tremolo 9
funktioniert nicht.
Die Dauer des Tremolos entspricht der Dauer der Wertes in Klammern,
multipliziert mit der Zahl der Wiederholungen: \repeat tremolo
8 { c16 d16 }
ergibt ein Tremolo für eine Ganze, notiert als zwei
Ganze, die zwei Tremolobalken zwischen sich haben.
Es gibt zwei Möglichkeiten, ein Tremolozeichen zu einer einzelnen
Noten hinzuzufügen. Die \repeat tremolo
-Syntax kann hier auch
benutzt werden; in diesem Fall wird die Note allerdings nicht
eingeklammert:
\repeat tremolo 4 c'16
Die gleiche Darstellung wird erreicht, indem nach der Note
„:
[Zahl]“ geschrieben wird. Die Zahl zeigt
die Dauer der Unterteilung an, und sie muss mindestens den
Wert 8 haben. Ein Wert von 8 ergibt einen Balken durch den
Notenhals. Wenn die Zahl ausgelassen wird, wird der letzte
benutzte Wert eingesetzt (gespeichert in tremoloFlags
):
c2:8 c:32 c: c:
See also
Schnipsel: Repeats.
Known issues and warnings
Tremolo über Notensysteme hinweg funktioniert nicht gut.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Tremolo repeats ] | [ Nach oben : Musical notation ] | [ Single voice > ] |
1.5 Simultaneous notes
Polyphonie bedeutet in der musikalischen Terminologie das Vorhandensein von mehr als einer (eigenständigen) Stimme in einem Stück. Für LilyPond bedeutet es aber das Vorhandensein von mehr als einer Stimme pro System.
1.5.1 Single voice | ||
1.5.2 Multiple voices |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Simultaneous notes ] | [ Nach oben : Simultaneous notes ] | [ Chorded notes > ] |
1.5.1 Single voice
Dieser Abschnitt behandelt gleichzeitige Noten innerhalb derselben Stimme.
Chorded notes | ||
Simultaneous expressions | ||
Clusters |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Single voice ] | [ Nach oben : Single voice ] | [ Simultaneous expressions > ] |
Chorded notes
Ein Akkord wird notiert, indem die zu ihm gehörenden Tonhöhen
zwischen spitze Klammern (<
und >
) gesetzt werden.
Auf einen Akkord kann eine Dauer-Angabe und/oder eine Anzahl
an Artikulationsbezeichnungen folgen, genauso wie bei
einfachen Noten.
<c e g>2 <c f a>4-> <e g c>-.
Der relative Modus kann auch für Tonhöhen in Akkorden benutzt werden. Die Oktave jeder Tonhöhe wird relativ zur vorhergehenden Tonhöhe bestimmt. Eine Ausnahme bildet die erste Tonhöhe in einem Akkord: ihre Oktave wird bestimmt relativ zur ersten Tonhöhe des vorherigen Akkords.
Mehr Information über Akkorden findet sich in Chord notation.
See also
Musikglossar: chord.
Handbuch zum Lernen: Combining notes into chords.
Notationsreferenz: Chord notation.
Schnipsel: Simultaneous notes.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Chorded notes ] | [ Nach oben : Single voice ] | [ Clusters > ] |
Simultaneous expressions
Eine oder mehrere musikalische Ausdrücke, die in doppelte spitze Klammern eingeschlossen werden, werden gleichzeitig gesetzt. Wenn der erste Ausdruck mit einer einzelnen Note beginnt oder die gesamte Konstruktion explizit in einer einzelnen Stimme erstellt wird, wird auch nur ein Notensystem erstellt. In anderem Falle werden die Elemente der simultanen Konstruktion auf unterschiedlichen Systemen gesetzt.
Das nächste Beispiel zeigt simultane Konstruktionen auf einem System:
\new Voice { % explicit single voice << {a4 b g2} {d4 g c,2} >> }
% single first note a << {a4 b g} {d4 g c,} >>
Dass kann benutzt werden, wenn die simultanen Abschnitte einen identischen Rhythmus haben, aber wenn versucht wird, Noten mit unterschiedlicher Dauer an denselben Hals zu setzen, gibt es Fehlermeldungen.
Das nächste Beispiel zeigt, wie ein simultaner Ausdruck implizit mehrere Systeme erstellt:
% no single first note << {a4 b g2} {d4 g2 c,4} >>
In diesem Fall stellt der unterschiedliche Rhythmus kein Problem dar.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Simultaneous expressions ] | [ Nach oben : Single voice ] | [ Multiple voices > ] |
Clusters
Ein Cluster zeigt an, dass alle Tonhöhen in einem Bereich gleichzeitig
gespielt werden sollen. Cluster können gedeutet werden als eine
Zusammenfassung einer ganzen Anzahl von Noten. Sie werden notiert,
indem die Funktion \makeClusters
auf eine Reihe von Akkorden
angewendet wird:
\makeClusters { <g b>2 <c g'> }
Normale Noten und Cluster können zusammen im selben System notiert werden, sogar gleichzeitig. In solchen Fällen wird nicht versucht, automatisch Zusammenstöße zwischen normalen Noten und Clustern aufzulösen.
See also
Musikglossar: cluster.
Schnipsel: Simultaneous notes.
Referenz der Interna: ClusterSpanner, ClusterSpannerBeacon, Cluster_spanner_engraver.
Known issues and warnings
Cluster sehen nur gut aus, wenn sie wenigstens über zwei Akkorde reichen – anderfalls sind sie zu schmal.
Cluster haben keine Hälse und können auch selber keine Dauern darstellen, aber die Länge des gesetzten Clusters wird erschlossen anhand der Dauern der definierten Akkorde. Voneinander getrennte Cluster brauchen eine unsichtbare Pause zwischen sich.
Cluster produzieren kein MIDI.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Clusters ] | [ Nach oben : Simultaneous notes ] | [ Single-staff polyphony > ] |
1.5.2 Multiple voices
Dieser Abschnitt behandelt gleichzeitige Noten in mehreren Stimmen oder mehreren Systemen.
Single-staff polyphony | ||
Voice styles | ||
Collision resolution | ||
Automatic part combining | ||
Writing music in parallel |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Multiple voices ] | [ Nach oben : Multiple voices ] | [ Voice styles > ] |
Single-staff polyphony
Stimmen explicit beginnen
Die grundlegende Struktur, die man benötigt, um mehrere unabhängige Stimmen in einem Notensystem zu setzen, ist im Beispiel unten dargestellt:
\new Staff << \new Voice = "first" { \voiceOne r8 r16 g e8. f16 g8[ c,] f e16 d } \new Voice= "second" { \voiceTwo d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. } >>
Stimmen werden hier explizit erstellt und erhalten Bezeichnungen
zugewiesen. Die \voiceOne
... \voiceFour
-Befehle
stellen die Stimmen so ein, dass für die erste und dritte Stimme
die Hälse nach oben zeigen, für die zweite und vierte Stimme
hingegen nach unten. Die Noten der dritten und vierten Stimme
werden horizontal verschoben, und Pausen in den entsprechenden
Stimmen werden automatisch verschoben, um Zusammenstöße zu
vermeiden. Der \oneVoice
-Befehl stellt das Standardverhalten
mit neutralen Halsrichtungen wieder her.
Vorrübergehende polyphone Passagen
Ein vorrübergehender polyphoner Abschnitt kann mit folgender Konstruktion erstellt werden:
<< { \voiceOne ... } \new Voice { \voiceTwo ... } >> \oneVoice
Der erste Ausdruck innerhalb des polyphonen Abschnitts wird in
den Voice
-Kontext gestellt, der unmittelbar vor dem
polyphonen Abschnitt aktiv war, und der gleiche Voice
-Kontext
setzt sich nach dem Abschnitt fort. Andere Ausdrücke innerhalb
der eckigen Klammern werden anderen Stimmennummern zugewiesen.
Damit lassen sich auch Gesangstexte einer durchgehenden Stimme
vor, während und nach dem polyphonen Abschnitt zuweisen:
<< \new Voice = "melody" { a4 << { \voiceOne g f } \new Voice { \voiceTwo d2 } >> \oneVoice e4 } \new Lyrics \lyricsto "melody" { This is my song. } >>
Hierbei sind die Befehle \voiceOne
und \voiceTwo
notwendig, um die Einstellungen für jede Stimme zu
initialisieren.
Die Konstruktion mit doppeltem Backslash
Die << {...} \\ {...} >>
-Konstruktion, in welcher
die beiden (oder mehreren) Ausdrücke durch doppelte
Backslash-Zeichen (Taste AltGr+ß) getrennt werden, verhält
sich anderes als die ähnliche Konstruktion ohne die doppelten
Schrägstriche: alle Ausdrücke innerhalb der eckigen
Klammern werden in diesem Fall jeweils neuen Voice
-Kontexten
zugeordnet. diese neuen Voice
-Kontexte werden implizit
erstellt und haben die festen Bezeichnungen "1"
,
"2"
usw.
Das erste Beispiel könnte also auch wie folgt notiert werden:
<< { r8 r16 g e8. f16 g8[ c,] f e16 d } \\ { d16 c d8~ d16 b c8~ c16 b c8~ c16 b8. } >>
Diese Syntax kann benutzt werden, wenn es keine Rolle spielt,
ob vorrübergehend Stimmen erstellt werden und dann wieder
verworfen werden. Diese implizit erstellten Stimmen erhalten
die Einstellungen, die in den Befehlen
\voiceOne
... \voiceFour
enthalten sind, in
der Reihenfolge, in der sie im Quelltext auftauchen.
Im nächsten Beispiel zeigen die Hälse der zeitweiligen Stimme
nach oben, sie wird deshalb erst als dritte in der Konstruktion
notiert, damit sie die Eigenschaften von voiceThree
zugewiesen bekommt. Unsichtbare Pause werden eingesetzt, damit
keine doppelten Pausen ausgegeben werden.
<< { r8 g g g g f16 ees f8 d } \\ { ees,8 r ees r d r d r } \\ { d'8 s c s bes s a s } >>
Es wird sehr empfohlen, in allen außer den allereinfachsten Stücken explizite Stimmenkontexte zu erstellen, wie erklärt in Contexts and engravers und Explicitly instantiating voices.
Identische Rhythmen
Wenn paralelle Abschnitte gesetzt werden sollen,
die identischen Rhythmus haben, kann man die Ausdrücke in
einen einzigen Voice
-Kontext parallel kombinieren, sodass
sich Akkorde ergeben. Um das zu erreichen, müssen sie einfach
von spitzen Klammern innerhalb einer expliziten Stimme
umgeben werden:
\new Voice << { e4 f8 d e16 f g8 d4 } { c4 d8 b c16 d e8 b4 } >>
Mit dieser Methode können sich seltsame Balken und Warnungen ergeben, wenn die Musikausdrücke nicht den gleichen Rhythmus haben.
Predefined commands
\voiceOne
,
\voiceTwo
,
\voiceThree
,
\voiceFour
,
\oneVoice
.
See also
Handbuch zum Lernen: Voices contain music, Explicitly instantiating voices.
Notationsreferenz: Percussion staves, Invisible rests.
Schnipsel: Simultaneous notes.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Single-staff polyphony ] | [ Nach oben : Multiple voices ] | [ Collision resolution > ] |
Voice styles
Stimmen können unterschiedliche Farben erhalten, um einfach erkennbar zu sein:
<< { \voiceOneStyle d4 c2 b4 } \\ { \voiceTwoStyle e,2 e } \\ { \voiceThreeStyle b2. c4 } \\ { \voiceFourStyle g'2 g } >>
Der \voiceNeutralstyle
-Befehl wird benutzt, um wieder
die Standardausgabe einzuschalten.
Predefined commands
\voiceOneStyle
,
\voiceTwoStyle
,
\voiceThreeStyle
,
\voiceFourStyle
,
\voiceNeutralStyle
.
See also
Handbuch zum Lernen: I’m hearing Voices, Other sources of information.
Schnipsel: Simultaneous notes.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Voice styles ] | [ Nach oben : Multiple voices ] | [ Automatic part combining > ] |
Collision resolution
Die Notenköpfe von Noten in unterschiedlichen Stimmen mit derselben Tonhöhe, demselben Notenkopf und den Hälsen in entgegengesetzte Richtungen werden automatisch verschmolzen, aber Noten mit unterschiedlichen Köpfen oder den Hälsen in die selbe Richtung werden nicht verschmolzen. Pausen, die einem Hals in einer anderen Stimme gegenüberstehen, werden vertikal verschoben.
<< { c8 d e d c d c4 g'2 fis } \\ { c2 c8. b16 c4 e,2 r } \\ { \oneVoice s1 e8 a b c d2 } >>
Noten mit unterschiedlichen Notenköpfen können verschmolzen werden, mit der Ausnahme von Halben- und Viertelnotenköpfen:
<< { \mergeDifferentlyHeadedOn c8 d e d c d c4 g'2 fis } \\ { c2 c8. b16 c4 e,2 r } \\ { \oneVoice s1 e8 a b c d2 } >>
Auch Köpfe mit unterschiedlichen Punktierungen können verschmolzen werden:
<< { \mergeDifferentlyHeadedOn \mergeDifferentlyDottedOn c8 d e d c d c4 g'2 fis } \\ { c2 c8. b16 c4 e,2 r } \\ { \oneVoice s1 e8 a b c d2 } >>
Die Halbe und die Achtel am Anfang des zweiten Taktes werden
fehlerhaft verschmolzen, weil \mergeDifferentlyHeadedOn
(Unterschiedliche Köpfe Verschmelzen An) nicht richtig arbeiten
kann, wenn drei oder mehr Noten zur gleichen Zeit auftreten –
in diesem Fall wird eine Warnung ausgegeben. Damit die
Verschmlezung richtig funktionieren kann, muss ein \shift
(Verschiebung) der Note hinzugefügt werden, die nicht mit
verschmolzen werden soll. In diesem Fall wurde
\shiftOn
gesetzt, um das oberste g aus der
Kolumne zu entfernen. Jetzt funktioniert
\mergeDifferentlyHeadedOn
so wie es soll.
<< { \mergeDifferentlyHeadedOn \mergeDifferentlyDottedOn c8 d e d c d c4 \shiftOn g'2 fis } \\ { c2 c8. b16 c4 e,2 r } \\ { \oneVoice s1 e8 a b c d2 } >>
Die Befehle \shiftOn
, \shiftOnn
und \shiftOnnn
bezeichnen den Grad, mit dem Noten der aktuellen Stimme verschoben
werden sollen. Die äußeren Stimmen (normalerweise Stimme eins und
zwei) haben diese Funktion standardmäßig ausgeschaltet
(\shiftOff
), während die inneren Stimmen (drei und vier)
ein \shiftOn
eingestellt haben (Verschiebung an). Die
Befehle \shiftOnn
und \shiftOnnn
stellen weitere
Verschiebungesebenen dar.
Noten werden nur verschmolzen, wenn ihre Hälse in gegengesetzte
Richtungen zeigen (also etwa wie Voice
1 und 2).
Predefined commands
\mergeDifferentlyDottedOn
,
\mergeDifferentlyDottedOff
,
\mergeDifferentlyHeadedOn
,
\mergeDifferentlyHeadedOff
,
\shiftOn
,
\shiftOnn
,
\shiftOnnn
,
\shiftOff
.
Selected Snippets
Additional voices to avoid collisions
In some instances of complex polyphonic music, additional voices are
necessary to prevent collisions between notes. If more than four
parallel voices are needed, additional voices can be added by defining
a variable using the Scheme function context-spec-music
.
voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice) \relative c'' { \time 3/4 \key d \minor \partial 2 << { \voiceOne a4. a8 e'4 e4. e8 f4 d4. c8 } \\ { \voiceThree f,2 bes4 a2 a4 s2 } \\ { \voiceFive s2 g4 g2 f4 f2 } \\ { \voiceTwo d2 d4 cis2 d4 bes2 } >> }
Forcing horizontal shift of notes
When the typesetting engine cannot cope, the following syntax can be used to override typesetting decisions. The units of measure used here are staff spaces.
\relative c' << { <d g>2 <d g> } \\ { <b f'>2 \once \override NoteColumn #'force-hshift = #1.7 <b f'>2 } >>
See also
Musikglossar: polyphony.
Handbuch zum Lernen: Multiple notes at once, Voices contain music, Collisions of objects.
Schnipsel: Simultaneous notes.
Referenz der Interna: NoteColumn, NoteCollision, RestCollision.
Known issues and warnings
Wenn \mergeDifferentlyHeadedOn
mit einer Achtel- oder
kürzeren Note benutzt wird, deren Hals nach oben zeigt, und
einer Halben Note mit Hals nach unten, erhält der Hals der
Achtelnote eine geringe Verschiebung, weil der schwarze und
weiße Notenkopf eine unterschiedliche Breite beistzen.
Es gibt keine Unterstützung für Akkorde, in denen die gleiche Note mit unterschiedlichen Versetzungszeichen im selben Akkord auftaucht. In diesem Fall wird empfohlen, enharmonische Töne zu verwenden, oder die besondere Cluster-Notation (siehe Clusters).
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Collision resolution ] | [ Nach oben : Multiple voices ] | [ Writing music in parallel > ] |
Automatic part combining
Automatische Kombination von Stimmen wird verwendet, um zwei Stimmen auf einem Notensystem zu setzen. Es wird vor allem in Orchesterpartituren eingesetzt. Wenn beide Stimmen für einige Noten identisch sind, wird nur eine dargestellt. An den Stellen, an denen die beiden Stimmen sich unterscheiden, werden sie als unterschiedliche Stimmen gesetzt, und die Richtung der Hälse wird automatisch bestimmt. Zusätzlich werden solo und a due-Stellen erkannt und bezeichnet.
Die Syntax zur Stimmenkombination lautet:
\partcombine musikAusdr1 musikAusdr2
Das nächste Beispiel zeigt, wie die Kombination funktioniert. Hier werden die Stimmen erst auf einem jeweils eigenen System und dann kombiniert gesetzt, beachten Sie, wie sich die Einstellungen für Polyphonie ändern.
instrumentOne = \relative c' { c4 d e f R1 d'4 c b a b4 g2 f4 e1 } instrumentTwo = \relative g' { R1 g4 a b c d c b a g f( e) d e1 } << \new Staff \instrumentOne \new Staff \instrumentTwo \new Staff \partcombine \instrumentOne \instrumentTwo >>
Die Noten des dritten Taktes werden nur einfach ausgegeben, obwohl sie ein beiden Stimmen definiert sind. Die Richtung von Hälsen und Bögen werden automatisch gewählt, abhängig davon ob es eine Solo-Stelle oder Unisono ist. In polyphonen Situationen erhält die erste Stimme immer Hälse nach oben, die zweite Stimme Hälse nach unten. An Solo-Stellen werden die Stimmen mit „Solo“ bzw. „Solo II“ bezeichnet. Die Unisono-Stellen (a due) werden mit dem Text „a2“ gekennzeichnet.
Beide Argumente von \partcombine
werden als
Voice
-Kontexte interpretiert. Wenn relative Oktaven
benutzt werden, muss \relative
für beide Stimmen
benutzt werden, also:
\partcombine \relative … musikAusdr1 \relative … musikAusdr2
Ein \relative
-Abschnitt, der sich außerhalb von\partcombine
befindet, hat keinen Einfluss auf
die Tonhöhen von musikAusdr1 oder musikAusdr2.
Selected Snippets
Combining two parts on the same staff
The part combiner tool ( \partcombine
command ) allows the
combination of several different parts on the same staff. Text
directions such as "solo" or "a2" are added by default; to remove
them, simply set the property printPartCombineTexts
to
"false". For vocal scores (hymns), there is no need to add
"solo"/"a2" texts, so they should be switched off. However, it
might be better not to use it if there are any solos, as they won’t be
indicated. In such cases, standard polyphonic notation may be
preferable.
This snippet presents the three ways two parts can be printed on a same
staff: standard polyphony, \partcombine
without texts, and
\partcombine
with texts.
musicUp = \relative c'' { \time 4/4 a4 c4.( g8) a4 | g4 e' g,( a8 b) | c b a2. } musicDown = \relative c'' { g4 e4.( d8) c4 | r2 g'4( f8 e) | d2 \stemDown a } \score { << << \new Staff { \set Staff.instrumentName = "Standard polyphony " << \musicUp \\ \musicDown >> } \new Staff \with { printPartCombineTexts = ##f } { \set Staff.instrumentName = "PartCombine without texts " \partcombine \musicUp \musicDown } \new Staff { \set Staff.instrumentName = "PartCombine with texts " \partcombine \musicUp \musicDown } >> >> \layout { indent = 6.0\cm \context { \Score \override SystemStartBar #'collapse-height = #30 } } }
Changing partcombine texts
When using the automatic part combining feature, the printed text for the solo and unison sections may be changed:
\new Staff << \set Staff.soloText = #"girl" \set Staff.soloIIText = #"boy" \set Staff.aDueText = #"together" \partcombine \relative c'' { g4 g r r a2 g } \relative c'' { r4 r a( b) a2 g } >>
See also
Notationsreferenz: Writing parts.
Schnipsel: Simultaneous notes.
Referenz der Interna: PartCombineMusic, Voice.
Known issues and warnings
\partcombine
kann nur zwei Stimmen bearbeiten.
Wenn printPartCombineTexts
(drucke Stimmenkombinationstext)
gesetzt ist und die Stimmen die gleichen Noten wiederholgt
spielen, kann a2
in einem Takt mehrmals gesetzt werden.
\partcombine
kann nicht innerhalb von \times
benutzt
werden.
\partcombine
kann nicht innerhalb von \relative
benutzt werden.
Intern werden beide Argumente von \partcombine
als
Stimmen (Voice
) interpretiert und entschieden, wann
die Stimmen kombiniert werden können. Wenn sie unterschiedliche
Dauern haben, können sie nicht kombiniert werden und erhalten
die Bezeichnung one
und two
Darum werden
Wechsel zu einem Voice
-Kontext, der eine andere
Bezeichnung hat, ignoriert. Genausowenig ist die Stimmenkombination
dazu ausgelegt, Gesangtext zu verarbeiten: wenn eine der
Stimmen eine explizite Bezeichnung erhält, damit Text damit
verknüpft werden kann, hört die Stimmenkombination auf zu
arbeiten.
\partcombine
findet nur den Beginn von Noten. Es kann
nicht bestimmen, ob eine vorher begonnene Noten weiterklingt,
was zu verschiedenen Problemen führen kann.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Automatic part combining ] | [ Nach oben : Multiple voices ] | [ Staff notation > ] |
Writing music in parallel
Noten für mehrere Stimmen können verschachtelt notiert werden.
Die Funktion \parallelMusic
akzeptiert eine Liste mit
den Bezeichnungen einer Reihe von Variablen und einen
musikalischen Ausdruck. Der Inhalt der verschiedenen Takte in
dem musikalischen Ausdruck bekommt die Bezeichnung der Variablen zugewiesen,
sodass sie benutzt werden können, um die Musik dann zu setzen.
Dabei entspricht jede Zeile einer Stimme.
Achtung: Taktüberprüfungen |
\parallelMusic #'(voiceA voiceB voiceC) { % Bar 1 r8 g'16 c'' e'' g' c'' e'' r8 g'16 c'' e'' g' c'' e'' | r16 e'8.~ e'4 r16 e'8.~ e'4 | c'2 c'2 | % Bar 2 r8 a'16 d'' f'' a' d'' f'' r8 a'16 d'' f'' a' d'' f'' | r16 d'8.~ d'4 r16 d'8.~ d'4 | c'2 c'2 | } \new StaffGroup << \new Staff << \voiceA \\ \voiceB >> \new Staff { \clef bass \voiceC } >>
Der relative Modus kann auch benutzt werden. Beachten Sie, dass
der \relative
-Befehl nicht innerhalb von
\parallelMusic
benutzt wird. Die Noten sind paralell
zu der vorherigen Note der gleichen Stimme , nicht zu der
vorherigen Note in der Quelldatei. Anders gesagt ignorieren
realtive Noten von voiceA
die Noten von voiceB
.
\parallelMusic #'(voiceA voiceB voiceC) { % Bar 1 r8 g16 c e g, c e r8 g,16 c e g, c e | r16 e8.~ e4 r16 e8.~ e4 | c2 c | % Bar 2 r8 a,16 d f a, d f r8 a,16 d f a, d f | r16 d8.~ d4 r16 d8.~ d4 | c2 c | } \new StaffGroup << \new Staff << \relative c'' \voiceA \\ \relative c' \voiceB >> \new Staff \relative c' { \clef bass \voiceC } >>
Das funktioniert ziemlich gut für Klaviernoten. Dieses Beispiel speichert vier konsekutive Takte in vier Variablen:
global = { \key g \major \time 2/4 } \parallelMusic #'(voiceA voiceB voiceC voiceD) { % Bar 1 a8 b c d | d4 e | c16 d e fis d e fis g | a4 a | % Bar 2 e8 fis g a | fis4 g | e16 fis g a fis g a b | a4 a | % Bar 3 ... } \score { \new PianoStaff << \new Staff { \global << \relative c'' \voiceA \\ \relative c' \voiceB >> } \new Staff { \global \clef bass << \relative c \voiceC \\ \relative c \voiceD >> } >> }
See also
Handbuch zum Lernen: Organizing pieces with variables.
Schnipsel: Simultaneous notes.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Writing music in parallel ] | [ Nach oben : Musical notation ] | [ Displaying staves > ] |
1.6 Staff notation
Dieser Abschnitt zeigt, wie die Erscheinung von Systemen beeinflusst wird, wie Partituren mit mehr als einem System gesetzt werden und wie man Aufführungsanweisungen und Stichnoten zu einzelnen Systemen hinzufügt.
1.6.1 Displaying staves | ||
1.6.2 Modifying single staves | ||
1.6.3 Writing parts |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Staff notation ] | [ Nach oben : Staff notation ] | [ Instantiating new staves > ] |
1.6.1 Displaying staves
Dieser Abschnitt zeigt unterschiedliche Methoden, Notensysteme und Gruppen von Systemen zu erstellen.
Instantiating new staves | ||
Grouping staves | ||
Nested staff groups |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Displaying staves ] | [ Nach oben : Displaying staves ] | [ Grouping staves > ] |
Instantiating new staves
Notensysteme (engl. staff, Pl. staves)
werden mit dem \new
oder \context
-Befehl erstellt. Zu
Einzelheiten siehe
Creating contexts.
Der einfachste Notensystem-Kontext ist Staff
:
\new Staff { c4 d e f }
DrumStaff
(Perkussionsnotensystem) erstellt ein Notensystem
mit fünf Linien, das für ein typisches Schlagzeug eingerichtet ist.
Für jedes Instrument werden unterschiedliche Symbole dargestellt.
Die Instrumente werden innerhalb der
drummode
-Umgebung gesetzt, wo jedes Instrument seine eigene
Bezeichnung hat. Zu Einzelheiten siehe
Percussion staves.
\new DrumStaff { \drummode { cymc hh ss tomh } }
RhythmicStaff
(Rhythmus-System) erstellt ein Notensystem mit
nur einer Notenlinie, auf welcher nur die rhythmischen Werte der
eingegebenen Noten dargestellt werden. Die wirklichen Längen bleiben
erhalten. Zu Einzelheiten, siehe
Showing melody rhythms.
\new RhythmicStaff { c4 d e f }
TabStaff
(Tabulatursystem) erstellt eine Tabulatur mit sechs
Saiten in der üblichen Gitarrenstimmung. Zu Einzelheiten siehe
Default tablatures.
\new TabStaff { c4 d e f }
Es gibt zwei Notensysteme, die zur Notation von Alter Musik eingesetzt
werden: MensuralStaff
and VaticanaStaff
. Sie sind
erklärt in
Pre-defined contexts.
Das GregorianTranscriptionStaff
(System zur Transkription des
Gregorianischen Chorals) erstellt ein Notensystem, um modernen
Gregorianischen Choral zu notieren. Es hat keine Notenlinien.
\new GregorianTranscriptionStaff { c4 d e f e d }
Neue Notensystem-Kontexte können selber definiert werden. Zu Einzelheiten, siehe Defining new contexts.
See also
Notationsreferenz: Creating contexts, Percussion staves, Showing melody rhythms, Default tablatures, Pre-defined contexts, Staff symbol, Gregorian chant contexts, Mensural contexts, Defining new contexts.
Schnipsel: Staff notation.
Referenz der Interna: Staff, DrumStaff, GregorianTranscriptionStaff, RhythmicStaff, TabStaff, MensuralStaff, VaticanaStaff, StaffSymbol.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Instantiating new staves ] | [ Nach oben : Displaying staves ] | [ Nested staff groups > ] |
Grouping staves
Es gibt verschiedene Kontexte, um einzelne Notensysteme zu gruppieren und einer Partitur zu verbinden. Jeder Gruppenstil beeinflusst das Aussehen des Systemanfangs und das Verhalten der Taktlinien.
Wenn kein Kontext angegeben ist, wird die Standardeinstellung eingesetzt: die Gruppe beginnt mit einer vertikalen Linie und die Taktlinien sind nicht verbunden.
<< \new Staff { c1 c } \new Staff { c1 c } >>
Im StaffGroup
-Kontext die Gruppe mit einer eckigen Klammer
begonnen und die Taktlinien durch alle Systeme gezogen.
\new StaffGroup << \new Staff { c1 c } \new Staff { c1 c } >>
In einem ChoirStaff
(Chorsystem) beginnt die Gruppe mit einer
eckigen Klammer, aber die Taktlinien sind nicht verbunden.
\new ChoirStaff << \new Staff { c1 c } \new Staff { c1 c } >>
In einem GrandStaff
(Akkolade) beginnt die Gruppe mit einer
geschweiften Klammer und die Taktlinien sind durchgezogen.
\new GrandStaff << \new Staff { c1 c } \new Staff { c1 c } >>
Der PianoStaff
-(Klaviersystem)-Kontext ist identisch mit dem
GrandStaff
-Kontext, aber es ermöglicht zusätzlich direkt
die Angabe einer Instrumentbezeichnung. Zu Einzelheiten siehe
Instrument names.
\new PianoStaff << \set PianoStaff.instrumentName = #"Piano" \new Staff { c1 c } \new Staff { c1 c } >>
Jede Systemgruppe stellt die Eigenschaft
systemStartDelimiter
(SystemBeginnBegrenzer) auf einen der
folgenden Werte:
SystemStartBar
, SystemStartBrace
oder
SystemStartBracket
. Ein vierter Begrenzer,
SystemStartSquare
, ist auch erreichbar, aber man muss ihr
explizit einstellen.
Neue Systemgruppen können definiert werden. Zu Einzelheiten siehe Defining new contexts.
Selected Snippets
Use square bracket at the start of a staff group
The system start delimiter SystemStartSquare
can be used by
setting it explicitly in a StaffGroup
or ChoirStaffGroup
context.
\score { \new StaffGroup { << \set StaffGroup.systemStartDelimiter = #'SystemStartSquare \new Staff { c'4 d' e' f' } \new Staff { c'4 d' e' f' } >> } }
Display bracket with only one staff in a system
If there is only one staff in one of the staff types ChoirStaff
or StaffGroup
, the bracket and the starting bar line will not be
displayed as standard behavior. This can be changed by overriding the
relevant properties.
Note that in contexts such as PianoStaff
and GrandStaff
where the systems begin with a brace instead of a bracket, another
property has to be set, as shown on the second system in the example.
\markup \left-column { \score { \new StaffGroup << % Must be lower than the actual number of staff lines \override StaffGroup.SystemStartBracket #'collapse-height = #1 \override Score.SystemStartBar #'collapse-height = #1 \new Staff { c'1 } >> \layout { } } \null \score { \new PianoStaff << \override PianoStaff.SystemStartBrace #'collapse-height = #1 \override Score.SystemStartBar #'collapse-height = #1 \new Staff { c'1 } >> \layout { } } }
Mensurstriche layout (bar lines between the staves)
The mensurstriche-layout where the bar lines do not show on the staves
but between staves can be achieved with a StaffGroup
instead of
a ChoirStaff
. The bar line on staves is blanked out by setting
the transparent
property.
global = { \override Staff.BarLine #'transparent = ##t s1 s % the final bar line is not interrupted \revert Staff.BarLine #'transparent \bar "|." } \new StaffGroup \relative c'' { << \new Staff { << \global { c1 c } >> } \new Staff { << \global { c c } >> } >> }
See also
Glossar: brace, bracket, grand staff.
Notationsreferenz: Instrument names, Defining new contexts.
Schnipsel: Staff notation.
Referenz der Interna: Staff, StaffGroup, ChoirStaff, GrandStaff, PianoStaff, SystemStartBar, SystemStartBrace, SystemStartBracket, SystemStartSquare.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Grouping staves ] | [ Nach oben : Displaying staves ] | [ Modifying single staves > ] |
Nested staff groups
System-Gruppen können in beliebiger Tiefe geschachtelt werden. In diesem Fall erstellt jeder neue, innen liegende Kontext eine neue Klammer außerhalb der Klammer der Systemgruppe, in der er sich befindet.
\new StaffGroup << \new Staff { c2 c | c2 c } \new StaffGroup << \new Staff { g2 g | g2 g } \new StaffGroup \with { systemStartDelimiter = #'SystemStartSquare } << \new Staff { e2 e | e2 e } \new Staff { c2 c | c2 c } >> >> >>
Neue geschachtelte Systemgruppen können definiert werden. Zu Einzelheiten siehe Defining new contexts.
Selected Snippets
Nesting staves
The property systemStartDelimiterHierarchy
can be used to make
more complex nested staff groups. The command \set
StaffGroup.systemStartDelimiterHierarchy
takes an alphabetical list of
the number of staves produced. Before each staff a system start
delimiter can be given. It has to be enclosed in brackets and takes as
much staves as the brackets enclose. Elements in the list can be
omitted, but the first bracket takes always the complete number of
staves. The possibilities are SystemStartBar
,
SystemStartBracket
, SystemStartBrace
, and
SystemStartSquare
.
\new StaffGroup \relative c'' << \set StaffGroup.systemStartDelimiterHierarchy = #'(SystemStartSquare (SystemStartBrace (SystemStartBracket a (SystemStartSquare b) ) c ) d) \new Staff { c1 } \new Staff { c1 } \new Staff { c1 } \new Staff { c1 } \new Staff { c1 } >>
See also
Notationsreferenz: Grouping staves, Instrument names, Defining new contexts.
Schnipsel: Staff notation.
Referenz der Interna: StaffGroup, ChoirStaff, SystemStartBar, SystemStartBrace, SystemStartBracket, SystemStartSquare.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Nested staff groups ] | [ Nach oben : Staff notation ] | [ Staff symbol > ] |
1.6.2 Modifying single staves
Dieser Abschnitt zeigt, wie man bestimmte Eigenschaften eines Systems ändert – etwa die Anzahld der Notenlinien oder die Größe des Systems. Es werden auch Methoden dargestellt, ein System zu beginnen und zu beenden sowie eine Methode, Ossia-Systeme zu erstellen.
Staff symbol | ||
Ossia staves | ||
Hiding staves |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Modifying single staves ] | [ Nach oben : Modifying single staves ] | [ Ossia staves > ] |
Staff symbol
Die Linien eines Notensystems gehören zu dem
StaffSymbol
-(NotensystemSymbol)-Grob.
StaffSymbol
-Eigenschaften können verändert werden, um die
Erscheinung des Notensystems zu beeinflussen, aber sie müssen
gesetzt werden, bevor das System erstellt wird.
Die Anzahl der Notenlinien kann verändert werden. Die Position des Notenschlüssels und die Position von c’ können geändert werden, um dem neuen System zu entsprechen. Eine Erklärung findet sich im Schnipselabschnit in Clef.
\new Staff \with { \override StaffSymbol #'line-count = #3 } { d4 d d d }
Die Liniendicke der Notenlinien kann verändert werden. Die Dicke der Hilfslinien und Notenhälse wird auch beeinflusst, weil sie von der Notenliniendicke abhängen.
\new Staff \with { \override StaffSymbol #'thickness = #3 } { e4 d c b }
Die Dicke der Hilfslinien kann auch unabhängig von der Notenliniendicke verändert werden. Die zwei Zahlen in dem Beispiel sind Faktoren, mit denen die Notenlinien-Dicke und der Notenlinienabstand multipliziert werden. Die Addition beider Werte ergibt die Dicke der Hilfslinien.
\new Staff \with { \override StaffSymbol #'ledger-line-thickness = #'(1 . 0.2) } { e4 d c b }
Der Abstand zwischen Notenlinien kann verändert werden. Diese Einstellung wirkt sich auch auf den Abstand der Hilfslinien aus.
\new Staff \with { \override StaffSymbol #'staff-space = #1.5 } { a4 b c d }
Weitere Einzelheiten zu den Eigenschaften von StaffSymbol
findet sich in
staff-symbol-interface.
Veränderungen der Eigenschaften eines Notensystems mitten in einer
Partitur können zwischen die Befehle \stopStaff
und
\startStaff
gesetzt werden:
c2 c \stopStaff \override Staff.StaffSymbol #'line-count = #2 \startStaff b2 b \stopStaff \revert Staff.StaffSymbol #'line-count \startStaff a2 a
Die Befehle \startStaff
und \stopStaff
können
benutzt werden, um ein Notensystem irgendwo zu beenden oder zu
beginnen.
c4 b a2 \stopStaff b4 c d2 \startStaff e4 d c2
Predefined commands
\startStaff
,
\stopStaff
.
Selected Snippets
Making some staff lines thicker than the others
For pedagogical purposes, a staff line can be thickened (e.g., the
middle line, or to emphasize the line of the G clef). This can be
achieved by adding extra lines very close to the line that should be
emphasized, using the line-positions
property of the
StaffSymbol
object.
{ \override Staff.StaffSymbol #'line-positions = #'(-4 -2 -0.2 0 0.2 2 4) d'4 e' f' g' }
See also
Glossar: line, ledger line, staff.
Notationsreferenz: Clef.
Schnipsel: Staff notation.
Referenz der Interna: StaffSymbol, staff-symbol-interface.
Known issues and warnings
Wenn die vertikale Position der Notenlinien manuell verändert wird, werden Taktlinien immer auf der Position 0 zentriert. Somit muss die Distanz der äußeren Notenlinien vom Zentrum des Systems gleichgroß sein.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Staff symbol ] | [ Nach oben : Modifying single staves ] | [ Hiding staves > ] |
Ossia staves
Ossia-Systeme können gesetzt werden, indem zwei gleichzeitige Notensysteme an der entsprechenden Position erstellt werden:
\new Staff \relative c'' { c4 b d c << { c4 b d c } \new Staff { e4 d f e } >> c4 b c2 }
Dieses Beispiel ist aber normalerweise nicht erwünscht. Um Ossia-Systeme zu setzen, die sich über dem eigentlichen System befinden, keine Takt- und Schlüsselangaben haben und kleiner gesetzt sind, müssen einige Optimierungen angewendet werden. Im Handbuch zum Lernen wird eine Technik vorgestellt, mit der das gewünschte Ergebnis erreicht werden kann, beginnend in Nesting music expressions.
Das Beispiel unten setzt die
alignAboveContext
-(oberhalbAusrichtenKontext)-Eigenschaft
ein, um den Ossia-Abschnitt auszurichten. Diese Methode
bietet sich an, wenn nur einige Ossia-Systeme benötigt werden.
\new Staff = main \relative c'' { c4 b d c << { c4 b d c } \new Staff \with { \remove "Time_signature_engraver" alignAboveContext = #"main" fontSize = #-3 \override StaffSymbol #'staff-space = #(magstep -3) \override StaffSymbol #'thickness = #(magstep -3) firstClef = ##f } { e4 d f e } >> c4 b c2 }
Wenn mehrere isolierte Ossia-Systeme gebraucht werden, kann es
günstiger sein, einen leeren Staff
-Kontext mit einer
spezifischen Kontextidentifikation zu erstellen. Die
Ossia-Abschnitte werden dann erstellt, indem dieser Kontext
aufgerufen wird und mit \startStaff
und
\stopStaff
an den richtigen Stellen sichtbar gemacht
wird. Der Vorteil dieser Methode zeigt sich, wenn man längere
Stücke setzt.
<< \new Staff = ossia \with { \remove "Time_signature_engraver" \override Clef #'transparent = ##t fontSize = #-3 \override StaffSymbol #'staff-space = #(magstep -3) \override StaffSymbol #'thickness = #(magstep -3) } { \stopStaff s1*6 } \new Staff \relative c' { c4 b c2 << { e4 f e2 } \context Staff = ossia { \startStaff e4 g8 f e2 \stopStaff } >> g4 a g2 \break c4 b c2 << { g4 a g2 } \context Staff = ossia { \startStaff g4 e8 f g2 \stopStaff } >> e4 d c2 } >>
Man kann auch den \RemoveEmptyStaffContext
-Befehl einsetzen,
um Ossia-Systeme zu erstellen. Diese Methode eignet sich am
besten, wenn nach dem Ossia sofort ein Zeilenumbruch erfolgt.
In diesem Fall müssen auch keine unsichtbaren Pausen eingesetzt
werden; es reicht, \startStaff
und \stopStaff
einzusetzen. Mehr Information zu \RemoveEmptyStaffContext
findet sich in
Hiding staves.
<< \new Staff = ossia \with { \remove "Time_signature_engraver" \override Clef #'transparent = ##t fontSize = #-3 \override StaffSymbol #'staff-space = #(magstep -3) \override StaffSymbol #'thickness = #(magstep -3) } \new Staff \relative c' { c4 b c2 e4 f e2 g4 a g2 \break << { c4 b c2 } \context Staff = ossia { c4 e8 d c2 \stopStaff } >> g4 a g2 e4 d c2 } >> \layout { \context { \RemoveEmptyStaffContext \override VerticalAxisGroup #'remove-first = ##t } }
Selected Snippets
Vertically aligning ossias and lyrics
This snippet demonstrates the use of the context properties
alignBelowContext
and alignAboveContext
to control the
positioning of lyrics and ossias.
\paper { ragged-right = ##t } \relative c' << \new Staff = "1" { c4 c s2 } \new Staff = "2" { c4 c s2 } \new Staff = "3" { c4 c s2 } { \skip 2 << \lyrics { \set alignBelowContext = #"1" lyrics4 below } \new Staff \with { alignAboveContext = #"3" fontSize = #-2 \override StaffSymbol #'staff-space = #(magstep -2) \remove "Time_signature_engraver" } { \times 4/6 { \override TextScript #'padding = #3 c8[^"ossia above" d e d e f] } } >> } >>
See also
Glossar: ossia, staff, Frenched staff.
Handbuch zum Lernen: Nesting music expressions, Size of objects, Length and thickness of objects.
Notationsreferenz: Hiding staves.
Schnipsel: Staff notation.
Referenz der Interna: StaffSymbol.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Ossia staves ] | [ Nach oben : Modifying single staves ] | [ Writing parts > ] |
Hiding staves
Die Notenlinien können entfernt werden, indem der
Staff_symbol_engraver
aus dem Staff
-Kontext
entfernt wird. Alternativ kann auch \stopStaff
eingesetzt werden.
\new Staff \with { \remove "Staff_symbol_engraver" } \relative c''' { a8 f e16 d c b a2 }
Leere Systeme können versteckt werden, wenn der
\RemoveEmptyStaffContext
-Befehl im \layout
-Abschnitt
benutzt wird. In großen Orchesterpartituren wird dies oft
verwendet, um die leeren Systeme von gerade nicht spielenden
Instrumenten zu verstecken. In der Standardeinstellung werden alle
leeren Notenzeilen außer die des ersten Systems entfernt.
Achtung: Eine Notenzeile gilt als leer, wenn sie nur Ganztaktpausen,
unsichtbare Noten, |
\layout { \context { \RemoveEmptyStaffContext } } \relative c' << \new Staff { e4 f g a \break b1 \break a4 b c2 } \new Staff { c,4 d e f \break R1 \break f4 g c,2 } >>
\RemoveEmptyStaffContext
kann auch eingesetzt werden,
um Ossiaabschnitte zu erstellen. Zu Einzelheiten, siehe
Ossia staves.
Der \AncientRemoveEmptyStaffContext
-Befehl kann
benutzt werden, um leere Takte in Notation der Alten Musik
zu entfernen. Gleichermaßen kann
\RemoveEmptyRhythmicStaffContext
eingesetzt werden, um
leere Takte in einem
RhythmicStaff
-Kontext zu entfernen.
Predefined commands
\RemoveEmptyStaffContext
,
\AncientRemoveEmptyStaffContext
,
\RemoveEmptyRhythmicStaffContext
.
Selected Snippets
Removing the first empty line
The first empty staff can also be removed from the score by setting the
VerticalAxisGroup
property remove-first
. This can be done
globally inside the \layout
block, or locally inside the
specific staff that should be removed. In the latter case, you have to
specify the context (Staff
applies only to the current staff) in
front of the property.
The lower staff of the second staff group is not removed, because the setting applies only to the specific staff inside of which it is written.
\layout { \context { \RemoveEmptyStaffContext % To use the setting globally, uncomment the following line: % \override VerticalAxisGroup #'remove-first = ##t } } \new StaffGroup << \new Staff \relative c' { e4 f g a \break c1 } \new Staff { % To use the setting globally, comment this line, % uncomment the line in the \layout block above \override Staff.VerticalAxisGroup #'remove-first = ##t R1 \break R } >> \new StaffGroup << \new Staff \relative c' { e4 f g a \break c1 } \new Staff { R1 \break R } >>
See also
Glossar: Frenched staff.
Notationsreferenz: Staff symbol, Ossia staves.
Schnipsel: Staff notation.
Referenz der Interna: ChordNames, FiguredBass, Lyrics, Staff, VerticalAxisGroup, Staff_symbol_engraver.
Known issues and warnings
Wenn man den Staff_symbol_engraver
entfernt, werden auch
die Taktlinien entfernt. Wenn eine sichtbare Taktlinie
angefordert wird, kann es zu Formatierungsfehlern kommen. In
diesem Fall sollten folgende Befehle eingesetzt werden, anstatt
den Engraver zu entfernen:
\override StaffSymbol #'stencil = ##f \override NoteHead #'no-ledgers = ##t
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Hiding staves ] | [ Nach oben : Staff notation ] | [ Metronome marks > ] |
1.6.3 Writing parts
Dieser Abschnitt zeigt, wie man Tempo-Anweisungen und Instrumentenbezeichnungen einfügt. Es werden auch Möglichkeiten vorgestellt, andere Stimmen zu zitieren und Stichnoten zu formatieren.
Metronome marks | ||
Instrument names | ||
Quoting other voices | ||
Formatting cue notes |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Writing parts ] | [ Nach oben : Writing parts ] | [ Instrument names > ] |
Metronome marks
Eine Metronomanweisung wird wie folgt erstellt:
\tempo 4 = 120 c2 d e4. d8 c2
Anstelle dessen kann auch Text als Argument angegeben werden:
\tempo "Allegretto" c4 e d c b4. a16 b c4 r4
Wenn eine Metronombezeichnung und Text kombiniert wird, wird die Metronombezeichnung automatisch in Klammern gesetzt:
\tempo "Allegro" 4 = 160 g4 c d e d4 b g2
Der Text kann ein beliebiges Textbeschriftungsobjekt sein:
\tempo \markup { \italic Faster } 4 = 132 a8-. r8 b-. r gis-. r a-. r
Eine Metronombezeichnung in Klammern ohne Text kann erstellt werden, indem eine leere Zeichenkette hinzugefügt wird:
\tempo "" 8 = 96 d4 g e c
Selected Snippets
Printing metronome and rehearsal marks below the staff
By default, metronome and rehearsal marks are printed above the staff.
To place them below the staff simply set the direction
property
of MetronomeMark
or RehearsalMark
appropriately.
\layout { ragged-right = ##f } { % Metronome marks below the staff \override Score.MetronomeMark #'direction = #DOWN \tempo 8. = 120 c''1 % Rehearsal marks below the staff \override Score.RehearsalMark #'direction = #DOWN \mark \default c''1 }
Changing the tempo without a metronome mark
To change the tempo in MIDI output without printing anything, make the metronome mark invisible.
\score { \new Staff \relative c' { \tempo 4 = 160 c4 e g b c4 b d c \set Score.tempoHideNote = ##t \tempo 4 = 96 d,4 fis a cis d4 cis e d } \layout { } \midi { } }
Creating metronome marks in markup mode
New metronome marks can be created in markup mode, but they will not change the tempo in MIDI output.
\relative c' { \tempo \markup { \concat { ( \smaller \general-align #Y #DOWN \note #"16." #1 " = " \smaller \general-align #Y #DOWN \note #"8" #1 ) } } c1 c4 c' c,2 }
Zu Einzelheiten siehe Formatting text.
See also
Glossar: metronome, metronomic indication, tempo indication, metronome mark.
Notationsreferenz: Formatting text, MIDI output.
Schnipsel: Staff notation.
Referenz der Interna: MetronomeMark.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Metronome marks ] | [ Nach oben : Writing parts ] | [ Quoting other voices > ] |
Instrument names
Instrumentbezeichnungen können an der linken Seite von Notensystemen
im Staff
- und PianoStaff
-Kontext gesetzt
werden. Der Wert von instrumentName
wird für das erste
System eingesetzt, der Wert von shortInstrumentName
für
alle weiteren Systeme.
\set Staff.instrumentName = #"Violin " \set Staff.shortInstrumentName = #"Vln " c4.. g'16 c4.. g'16 \break c1
Mit dem Textbeschriftungsmodus können auch komplizierte Instrumentenbezeichnungen erstellt werden:
\set Staff.instrumentName = \markup { \column { "Clarinetti" \line { "in B" \smaller \flat } } } c4 c,16 d e f g2
Wenn zwei oder mehr Systeme gruppiert werden, werden die
Instrumentenbezeichnungen automatisch zentriert. Um auch
mehrzeilige Instrumentenbezeichnungen zentriert zu setzen, muss
\center-column
benutzt werden:
<< \new Staff { \set Staff.instrumentName = #"Flute" f2 g4 f } \new Staff { \set Staff.instrumentName = \markup \center-column { Clarinet \line { "in B" \smaller \flat } } c4 b c2 } >>
Wenn die Instrumentenbezeichnung zu lang ist, kann es vorkommen,
dass die Bezeichnungen in einer Gruppe nicht zentriert werden.
Um dennoch eine Zentrierung zu erhalten, müssen die Werte des
Einzugs (indent
und short-indent
) vergrößert werden.
Zu Einzelheiten siehe Horizontal dimensions.
\layout { indent = 3.0\cm short-indent = 1.5\cm } \relative c'' << \new Staff { \set Staff.instrumentName = #"Alto Flute in G" \set Staff.shortInstrumentName = #"Fl." f2 g4 f \break g4 f g2 } \new Staff { \set Staff.instrumentName = #"Clarinet" \set Staff.shortInstrumentName = #"Clar." c,4 b c2 \break c2 b4 c } >>
Um Instrumentenbezeichnungen zu anderen Kontexten (wie etwa
GrandStaff
, ChoirStaff
oder StaffGroup
)
hinzuzufügen, muss der Instrument_name_engraver
dem
entsprechenden Kontext hinzugefügt werden. Zu Einzelheiten
siehe Modifying context plug-ins.
Instrumentenbezeichnungen können mitten in einer Partitur geändert werden:
\set Staff.instrumentName = #"First" \set Staff.shortInstrumentName = #"one" c1 c c c \break c1 c c c \break \set Staff.instrumentName = #"Second" \set Staff.shortInstrumentName = #"two" c1 c c c \break c1 c c c \break
Wenn das Instrument gewechselt werden soll, kann der Befehl
\addInstrumentDefinition
in Begleitung von
\instrumentSwitch
benutzt werden, um eine detaillierte
Auflistung aller notwendigen Änderungen für den Wechsel zu
definieren. Der \addInstrumentDefinition
-Befehl hat
zwei Argumente: eine Identifikation und eine Assosiationsliste
von Kontexteigenschaften und Werten, die für dieses Instrument
benutzt werden müssen. Der Befehl muss sich auf der höchsten
Ebene in der Eingabedatei befinden. \instrumentSwitch
wird dann benutzt, um den Wechsel vorzunhemen:
\addInstrumentDefinition #"contrabassoon" #`((instrumentTransposition . ,(ly:make-pitch -1 0 0)) (shortInstrumentName . "Cbsn.") (clefGlyph . "clefs.F") (middleCPosition . 6) (clefPosition . 2) (instrumentCueName . ,(make-bold-markup "cbsn.")) (midiInstrument . "bassoon")) \new Staff \with { instrumentName = #"Bassoon" } \relative c' { \clef tenor \compressFullBarRests c2 g' R1*16 \instrumentSwitch "contrabassoon" c,,2 g \break c,1 ~ | c1 }
See also
Notationsreferenz: Horizontal dimensions, Modifying context plug-ins.
Schnipsel: Staff notation.
Referenz der Interna: InstrumentName, PianoStaff, Staff.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Instrument names ] | [ Nach oben : Writing parts ] | [ Formatting cue notes > ] |
Quoting other voices
Es kommt sehr oft vor, dass eine Orchesterstimme die gleichen Noten wie eine andere spielt. So können etwa die ersten und zweiten Geigen für eine Passage die gleichen Noten haben. In LilyPond kann man das erreichen, indem eine Stimme von der anderen zitiert, sodass man die Noten nicht nocheinmal eingeben muss.
Bevor eine Stimme zitiert werden kann, muss der
\addQuote
-Befehl benutzt werden, um das zitierbare
Fragment zu kennzeichnen. Dieser Befehl muss auf der höchsten
Ebene der Eingabedatei benutzt werden. Das erste Argument
dient zur Identifikation, das zweite ein musikalischer Ausdruck:
flute = \relative c'' { a4 gis g gis } \addQuote "flute" { \flute }
Der \quoteDuring
-Befehl wird benutzt, um den Punkt
anzuzeigen, an dem das Zitat beginnt. Er benötigt zwei
Argumente: die Bezeichnung der zitierten Stimme, wie vorher mit
\addQuote
definiert, und einen musikalischen Ausdruck,
der Angibt, wie lange das Zitat dauern soll; normalerweise
Ganztaktpausen oder unsichtbare Noten. Die entsprechenden
Noten der zitierten Stimme wird an der Stelle in die aktuelle
Stimme eingefügt:
flute = \relative c'' { a4 gis g gis } \addQuote "flute" { \flute } \relative c' { c4 cis \quoteDuring #"flute" { s2 } }
Wenn der musikalische Ausdruck, der mit dem
\quoteDuring
-Befehl benutzt wird, etwas anderes
als unsichtbare Noten oder Ganztaktpausen enthält, wird eine
polyphone Stelle begonnen, was meistens nicht erwünscht ist:
flute = \relative c'' { a4 gis g gis } \addQuote "flute" { \flute } \relative c' { c4 cis \quoteDuring #"flute" { c4 b } }
Zitate erkennen die Einstellungen von transponierten Instrumenten
sowohl der Quell- als auch der Zielstimme, wenn der
\transposition
-Befehl eingesetzt wird. Zu Einzelheiten
über \transposition
siehe
Instrument transpositions.
clarinet = \relative c'' { \transposition bes a4 gis g gis } \addQuote "clarinet" { \clarinet } \relative c' { c4 cis \quoteDuring #"clarinet" { s2 } }
Es ist möglich, Zitate mit eindeutigen Bezeichnungen zu versehen (unter Benutzung von tags), um sie auf unterschiedliche Weise zu verarbeiten. Einzelheiten zu diesem Vorgehen werden vorgestellt in Using tags.
Selected Snippets
Quoting another voice with transposition
Quotations take into account the transposition of both source and
target. In this example, all instruments play sounding middle C; the
target is an instrument in F. The target part may be transposed using
\transpose
. In this case, all the pitches (including the
quoted ones) are transposed.
\addQuote clarinet { \transposition bes \repeat unfold 8 { d'16 d' d'8 } } \addQuote sax { \transposition es' \repeat unfold 16 { a8 } } quoteTest = { % french horn \transposition f g'4 << \quoteDuring #"clarinet" { \skip 4 } s4^"clar." >> << \quoteDuring #"sax" { \skip 4 } s4^"sax." >> g'4 } { \set Staff.instrumentName = \markup { \center-column { Horn \line { in F } } } \quoteTest \transpose c' d' << \quoteTest s4_"up a tone" >> }
Quoting another voice
The quotedEventTypes
property determines the music event types
that are quoted. The default value is (note-event rest-event)
,
which means that only notes and rests of the quoted voice appear in the
\quoteDuring
expression. In the following example, a 16th rest
is not quoted since rest-event
is not in
quotedEventTypes
.
quoteMe = \relative c' { fis4 r16 a8.-> b4\ff c } \addQuote quoteMe \quoteMe original = \relative c'' { c8 d s2 \once \override NoteColumn #'ignore-collision = ##t es8 gis8 } << \new Staff { \set Staff.instrumentName = #"quoteMe" \quoteMe } \new Staff { \set Staff.instrumentName = #"orig" \original } \new Staff \relative c'' << \set Staff.instrumentName = #"orig+quote" \set Staff.quotedEventTypes = #'(note-event articulation-event) \original \new Voice { s4 \set fontSize = #-4 \override Stem #'length-fraction = #(magstep -4) \quoteDuring #"quoteMe" { \skip 2. } } >> >>
See also
Notationsreferenz: Instrument transpositions, Using tags.
Schnipsel: Staff notation.
Referenz der Interna: QuoteMusic, Voice.
Known issues and warnings
Nur der Inhalt der ersten Stimme innerhalb eines
\addQuote
-Befehls wird für das Zitat herangezogen, die
Variable Noten kann also keine \new
oder \context Voice
-Einheiten enthalten, die zu einer anderen
Stimme wechseln würden.
Ziernoten und Vorschläge können nicht zitiert werden und können sogar dazu führen, dass LilyPond abstürzt.
Wenn geschachtelte Triolen zitiert werden, ist das Notenbild unter Umständen sehr schlecht.
In früheren LilyPond-Versionen (vor 2.11) wurde der Befehl
addQuote
vollständig in Kleinbuchstaben geschrieben:
\addquote
.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Quoting other voices ] | [ Nach oben : Writing parts ] | [ Editorial annotations > ] |
Formatting cue notes
Der vorige Abschnitt zeigt, wie man Zitate erstellt. Der
\cueDuring
-Befehl (engl. cue note = Stichnote)
ist eine spezialisierte Form des
\quoteDuring
-Befehls, der insbesondere dazu dient,
Stichnoten zu einer Stimme hinzuzufügen. Seine Syntax lautet:
\cueDuring #Stimmenbezeichnung #Stimme Noten
Dieser Befehl kopiert die entsprechenden Takte von
Stimmenbezeichnung in einen CueVoice
-Kontext. Eine
CueVoice
(Stichnoten-Stimme) wird implizit erstellt
und erscheint simultan mit Noten, wobei folglich eine
polyphone Situation entsteht. Das Stimme-Argument entscheidet,
ob die Stichnoten als eine erste oder zweite Stimme
eingefügt werden sollen; UP
entspricht der ersten Stimme,
DOWN
der zweiten.
oboe = \relative c'' { r2 r8 d16 f e g f a g8 g16 g g2. } \addQuote "oboe" { \oboe } \new Voice \relative c'' { \cueDuring #"oboe" #UP { R1 } g2 c, }
In diesem Beispiel muss der Voice
-Kontext explizit
begonnen werden, damit nicht der gesamte musikalische Ausdruck
als Stichnoten-Stimme formatiert wird.
Die Bezeichnung des Instruments, von dem die Stichnoten genommen
werden, kann auch ausgegeben werden, wenn die Eigenschaft
instrumentCueName
im CueVoice
-Kontext definiert wird.
oboe = \relative c''' { g4 r8 e16 f e4 d } \addQuote "oboe" { \oboe } \new Staff \relative c'' << \new CueVoice \with { instrumentCueName = "ob." } \new Voice { \cueDuring #"oboe" #UP { R1 } g4. b8 d2 } >>
Zusätzlich zu der Instrumentenbezeichnung kann auch die
Bezeichnung des Originalinstruments ausgegeben werden, und alle
Änderungen, die für die Stichnoten gemacht wurden, müssen
wieder rückgängig gemacht werden. Das kann mit den Befehlen
\addInstrumentDefinition
und \instrumentSwitch
vorgenommen werden. Ein Beispiel und mehr Information findet
sich in
Instrument names.
Der \killCues
-Befehl entfernt Stichnoten aus einem
musikalischen Ausdruck. Das kann nützlich sein, wenn die
Stichnoten von einer Stimme entfernt werden sollen, aber in
einer anderen Edition benötigt werden.
flute = \relative c''' { r2 cis2 r2 dis2 } \addQuote "flute" { \flute } \new Voice \relative c'' { \killCues { \cueDuring #"flute" #UP { R1 } g4. b8 d2 } }
Der \transposedCueDuring
-Befehl bietet sich an, wenn man
Stichnoten eines Instrumentes mit einem vollständig anderen
Register hinzufügen will. Die Syntax ähnelt der des
\cueDuring
-Befehls, aber ein zusätzliches Argument
wird benötigt, das die Transposition der Stichnoten-Stimme
bezeichnet. Mehr Information zu Transposition siehe
Instrument transpositions.
piccolo = \relative c''' { \clef "treble^8" R1 c8 c c e g2 a4 g g2 } \addQuote "piccolo" { \piccolo } cbassoon = \relative c, { \clef "bass_8" c4 r g r \transposedCueDuring #"piccolo" #UP c,, { R1 } c4 r g r } << \new Staff = "piccolo" \piccolo \new Staff = "cbassoon" \cbassoon >>
Es ist möglich, Zitate mit eindeutigen Bezeichnungen zu versehen (unter Benutzung von tags), um sie auf unterschiedliche Weise zu verarbeiten. Einzelheiten zu diesem Vorgehen werden vorgestellt in Using tags.
See also
Notationsreferenz: Instrument transpositions, Instrument names, Using tags.
Schnipsel: Staff notation.
Referenz der Interna: CueVoice, Voice.
Known issues and warnings
Zusammenstöße können zwischen Pausen der Hauptstimme und
den Stichnoten des CueVoice
-Kontexts auftreten.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Formatting cue notes ] | [ Nach oben : Musical notation ] | [ Inside the staff > ] |
1.7 Editorial annotations
Dieser Abschnitt zeigt die verschiedenen Möglichkeiten, die Erscheinung der Noten zu ändern und analytische bzw. pädagogische Anmerkungen anzubringen.
1.7.1 Inside the staff | ||
1.7.2 Outside the staff |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Editorial annotations ] | [ Nach oben : Editorial annotations ] | [ Selecting notation font size > ] |
1.7.1 Inside the staff
Dieser Abschnitt zeigt, wie man Elemente hervorhebt, die sich innerhalb des Notensystems befinden.
Selecting notation font size | ||
Fingering instructions | ||
Hidden notes | ||
Coloring objects | ||
Parentheses | ||
Stems |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Inside the staff ] | [ Nach oben : Inside the staff ] | [ Fingering instructions > ] |
Selecting notation font size
Die Schriftgröße von Notationselementen kann geändert werden. Damit wird allerdings nicht die Größe von veränderlichen Symbolen, wie Balken oder Bögen, geändert.
Achtung: Für Schriftgröße von Text, siehe Selecting font and font size. |
\huge c4.-> d8---3 \large c4.-> d8---3 \normalsize c4.-> d8---3 \small c4.-> d8---3 \tiny c4.-> d8---3 \teeny c4.-> d8---3
Intern wird hiermit die fontSize
-Eigenschaft gesetzt. Sie
wird für alle Layout-Objekte definiert. Der Wert von
font-size
ist eine Zahl, die die Größe relativ zur Standardgröße
für die aktuelle Systemhöhe angibt. Jeder Vergrößerungsschritt bedeutet
etwa eine Vergrößerung um 12% der Schriftgröße. Mit sechs Schritten wird
die Schriftgröße exakt verdoppelt. Die Scheme-Funktion magstep
wandelt einen Wert von font-size
in einen Skalierungsfaktor um.
Die font-size
-Eigenschaft kann auch direkt gesetzt werden, so dass
sie sich nur auf bestimmte Layoutobjekte bezieht.
\set fontSize = #3 c4.-> d8---3 \override NoteHead #'font-size = #-4 c4.-> d8---3 \override Script #'font-size = #2 c4.-> d8---3 \override Stem #'font-size = #-5 c4.-> d8---3
Schriftgrößenänderungen werden erreicht, indem man die Design-Schriftgröße
nimmt, die der gewünschten am nächsten kommt, und sie dann skaliert. Die
Standard-Schriftgröße (für font-size = #0
) hängt von der
Standard-Systemhöhe ab. Für ein Notensystem von 20pt wird eine Schriftgröße
von 10pt ausgewählt.
Die font-size
-Eigenschaft kann nur für die Layoutobjekte gesetzt
werden, die Schrift-Dateien benutzen. Das sind die, welche die
font-interface
-Layoutschnittstelle unterstützen.
Predefined commands
\teeny
,
\tiny
,
\small
,
\normalsize
,
\large
,
\huge
.
See also
Schnipsel: Editorial annotations.
Referenz der Interna: font-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Selecting notation font size ] | [ Nach oben : Inside the staff ] | [ Hidden notes > ] |
Fingering instructions
Fingersatzanweisungen können folgenderweise notiert werden: Note-Zahl
c4-1 d-2 f-4 e-3
Für Fingerwechsel muss eine Textbeschriftung (markup) benutzt werden:
c4-1 d-2 f-4 c^\markup { \finger "2 - 3" }
Mit dem Daumen-Befehl (\thumb
) können die Noten bezeichnet
werden, die mit dem
Daumen (etwa auf dem Cello) gespielt werden sollen.
<a_\thumb a'-3>2 <b_\thumb b'-3>
Fingersätze für Akkorde können auch zu einzelnen Noten des Akkordes hinzugefügt werden, indem sie innerhalb der Akkord-Klammer direkt an die Noten angefügt werden.
<c-1 e-2 g-3 b-5>2 <d-1 f-2 a-3 c-5>
Fingersatzanweisungen können manuell oberhalb des Systems gesetzt werden, siehe Direction and placement.
Selected Snippets
Controlling the placement of chord fingerings
The placement of fingering numbers can be controlled precisely.
\relative c' { \set fingeringOrientations = #'(left) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down right up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(left) <c-1>2 \set fingeringOrientations = #'(down) <e-3>2 }
Allowing fingerings to be printed inside the staff
By default, vertically oriented fingerings are positioned outside the staff. However, this behavior can be canceled.
\relative c' { <c-1 e-2 g-3 b-5>2 \once \override Fingering #'staff-padding = #'() <c-1 e-2 g-3 b-5>2 }
Avoiding collisions with chord fingerings
Fingerings and string numbers applied to individual notes will automatically avoid beams and stems, but this is not true by default for fingerings and string numbers applied to the individual notes of chords. The following example shows how this default behavior can be overridden.
\relative c' { \set fingeringOrientations = #'(up) \set stringNumberOrientations = #'(up) \set strokeFingerOrientations = #'(up) % Default behavior r8 <f c'-5>8 <f c'\5>8 <f c'-\rightHandFinger #2 >8 % Corrected to avoid collisions r8 \override Fingering #'add-stem-support = ##t <f c'-5>8 \override StringNumber #'add-stem-support = ##t <f c'\5>8 \override StrokeFinger #'add-stem-support = ##t <f c'-\rightHandFinger #2 >8 }
See also
Notationsreferenz: Direction and placement.
Schnipsel: Editorial annotations.
Referenz der Interna: FingeringEvent, fingering-event, Fingering_engraver, New_fingering_engraver, Fingering.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Fingering instructions ] | [ Nach oben : Inside the staff ] | [ Coloring objects > ] |
Hidden notes
Versteckte (oder unsichtbare oder transparente) Noten können sinnvoll sein, wenn man Notation für den Theorieunterricht oder Kompositionsübungen erstellen will.
c4 d \hideNotes e4 f \unHideNotes g a \hideNotes b \unHideNotes c
Notationsobjekte, die an die unsichtbaren Noten angefügt sind, sind weiterhin sichtbar.
c4( d) \hideNotes e4(\p f)--
Predefined commands
\hideNotes
,
\unHideNotes
.
See also
Schnipsel: Editorial annotations.
Referenz der Interna: Note_spacing_engraver, NoteSpacing.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Hidden notes ] | [ Nach oben : Inside the staff ] | [ Parentheses > ] |
Coloring objects
Einzelnen Objekten können einfach eigene Farben zugewiesen werden. Gültige Farben-Bezeichnungen sind aufgelistet in List of colors.
\override NoteHead #'color = #red c4 c \override NoteHead #'color = #(x11-color 'LimeGreen) d \override Stem #'color = #blue e
Die ganze Farbpalette, die für X11 definiert ist, kann mit der
Scheme-Funktion x11-color
benutzt werden. Diese Funktion
hat ein Argument: entweder ein Symbol in der Form ’FooBar
oder eine Zeichenkette in der Form "FooBar"
. Die erste
Form ist schneller zu schreiben und effizienter. Mit der zweiten
Form ist es allerdings möglich, auch Farbbezeichnungen einzusetzen,
die aus mehr als einem Wort bestehen.
Wenn x11-color
die angegebene Farbbezeichnung nicht kennt, wird
Schwarz eingesetzt.
\override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2) \set Staff.instrumentName = \markup { \with-color #(x11-color 'navy) "Clarinet" } gis8 a \override Beam #'color = #(x11-color "medium turquoise") gis a \override Accidental #'color = #(x11-color 'DarkRed) gis a \override NoteHead #'color = #(x11-color "LimeGreen") gis a % this is deliberate nonsense; note that the stems remain black \override Stem #'color = #(x11-color 'Boggle) b2 cis
Exakte RGB-Farben können mit Hilfe der Scheme-Funktion rgb-color
definiert werden.
\override Staff.StaffSymbol #'color = #(x11-color 'SlateBlue2) \set Staff.instrumentName = \markup { \with-color #(x11-color 'navy) "Clarinet" } \override Stem #'color = #(rgb-color 0 0 0) gis8 a \override Stem #'color = #(rgb-color 1 1 1) gis8 a \override Stem #'color = #(rgb-color 0 0 0.5) gis4 a
See also
Notationsreferenz:
List of colors, The \tweak
command.
Schnipsel: Editorial annotations.
Known issues and warnings
Eine X11-Farbe hat nicht notwendigerweise exakt denselben Farbton wie eine ähnlich genannte normale Farbe.
Nicht alle X11-Farben lassen sich am Webbrowser erkennen, d. h. der
Unterschied etwa zwischen 'LimeGreen
und 'ForestGreen
wird
eventuell nicht dargestellt. Für die Benutzung im Internet wird
die Benutzung von einfachen Farben nahegelegt (z. B. #blue
,
#green
, #red
).
Noten in Akkorden können nicht mit \override
eingefärbt werden,
dazu muss \tweak
benutzt werden. Siehe auch The \tweak
command.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Coloring objects ] | [ Nach oben : Inside the staff ] | [ Stems > ] |
Parentheses
Objekte können in Klammern gesetzt werden, indem vor ihnen der Befehl
\parenthesize
geschrieben wird. Wenn ein Akkord in Klammern gesetzt
wird, wirkt sich das auf jede Noten im Akkord aus. Innerhalb von einem
Akkord gesetzte Befehle wirken sich auf einzelne Noten aus.
c2 \parenthesize d c2 \parenthesize <c e g> c2 <c \parenthesize e g>
Auch andere Objekte als Noten können in Klammern gesetzt werden.
c2-\parenthesize -. d c2 \parenthesize r
See also
Schnipsel: Editorial annotations.
Referenz der Interna: Parenthesis_engraver, ParenthesesItem, parentheses-interface.
Known issues and warnings
Wenn man einen Akkord einklammert, wird um jede Note eine eigene Klammer gesetzt, anstatt den gesamten Akkord in eine große Klammer zu fassen.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Parentheses ] | [ Nach oben : Inside the staff ] | [ Outside the staff > ] |
Stems
Immer, wenn das Programm eine Note findet, wird automatisch ein Notenhals ( Stem) -Objekt erzeugt. Auch für ganze Noten und Pausen werden sie erzeugt, aber unsichtbar gemacht.
Predefined commands
\stemUp
(Hälse nach oben),
\stemDown
(Hälse nach unten),
\stemNeutral
(Hälse je nach Notenposition).
Selected Snippets
Default direction of stems on the center line of the staff
The default direction of stems on the center line of the staff is set
by the Stem
property neutral-direction
.
\relative c'' { a4 b c b \override Stem #'neutral-direction = #up a4 b c b \override Stem #'neutral-direction = #down a4 b c b }
See also
Notationsreferenz: Direction and placement.
Schnipsel: Editorial annotations.
Referenz der Interna: Stem_engraver, Stem, stem-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Stems ] | [ Nach oben : Editorial annotations ] | [ Balloon help > ] |
1.7.2 Outside the staff
Dieser Abschnitt zeigt, wie man Elemente im System von außerhalb des Systems hervorhebt.
Balloon help | ||
Grid lines | ||
Analysis brackets |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Outside the staff ] | [ Nach oben : Outside the staff ] | [ Grid lines > ] |
Balloon help
Notationselemente können bezeichnet und markiert werden, indem um sie eine rechteckige Blase gezeichnet wird. Dies ist vor allem dazu da, Notation zu erklären.
\new Voice \with { \consists "Balloon_engraver" } { \balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" } a8 \balloonGrobText #'Rest #'(-4 . -4) \markup { "I'm a rest" } r <c, g'-\balloonText #'(-2 . -2) \markup { "I'm a note head" } c>2. }
Es gibt zwei Funktionen, balloonGrobText
und
balloonText
; die erste wird auf gleiche Art wie ein
\once \override
eingesetzt umd Text an einen Grob zu
hängen, die zweite funktioniert wie ein \tweak
und
wird üblicherweise innerhalb von Akkorden eingesetzt, um Text
an einzelne Noten zu hängen.
Textblasen beeinflussen normalerweise die Positionierung der Notation, aber das kann geändert werden.
\new Voice \with { \consists "Balloon_engraver" } { \balloonLengthOff \balloonGrobText #'Stem #'(3 . 4) \markup { "I'm a Stem" } a8 \balloonGrobText #'Rest #'(-4 . -4) \markup { "I'm a rest" } r \balloonLengthOn <c, g'-\balloonText #'(-2 . -2) \markup { "I'm a note head" } c>2. }
Predefined commands
\balloonLengthOn
,
\balloonLengthOff
.
See also
Schnipsel: Editorial annotations.
Referenz der Interna: Balloon_engraver, BalloonTextItem, balloon-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Balloon help ] | [ Nach oben : Outside the staff ] | [ Analysis brackets > ] |
Grid lines
Vertikale Linien können zwischen Systemen gesetzt werden, die mit den Noten synchronisiert sind.
Der Grid_point_engraver
muss benutzt werden, um die Endpunkte
der Linien zu definieren, und der Grid_line_span_engraver
wird
benutzt, um dann die Linien zu setzen. Der Standard ist, dass die
Gitterlinien unter den Noten und zur linken Seite des Notenkopfes
gesetzt werden. Sie reichen von der Mitte eines Systems bis zur
Mitte des anderen. Mit gridInterval
wird die Dauer zwischen
den Linien festgesetzt.
\layout { \context { \Staff \consists "Grid_point_engraver" gridInterval = #(ly:make-moment 1 4) } \context { \Score \consists "Grid_line_span_engraver" } } \score { \new ChoirStaff << \new Staff \relative c'' { \stemUp c4. d8 e8 f g4 } \new Staff \relative c { \clef bass \stemDown c4 g' f e } >> }
Selected Snippets
Grid lines: changing their appearance
The appearance of grid lines can be changed by overriding some of their properties.
\score { \new ChoirStaff << \new Staff { \relative c'' { \stemUp c'4. d8 e8 f g4 } } \new Staff { \relative c { % this moves them up one staff space from the default position \override Score.GridLine #'extra-offset = #'(0.0 . 1.0) \stemDown \clef bass \once \override Score.GridLine #'thickness = #5.0 c4 \once \override Score.GridLine #'thickness = #1.0 g'4 \once \override Score.GridLine #'thickness = #3.0 f4 \once \override Score.GridLine #'thickness = #5.0 e4 } } >> \layout { \context { \Staff % set up grids \consists "Grid_point_engraver" % set the grid interval to one quarter note gridInterval = #(ly:make-moment 1 4) } \context { \Score \consists "Grid_line_span_engraver" % this moves them to the right half a staff space \override NoteColumn #'X-offset = #-0.5 } } }
See also
Schnipsel: Editorial annotations.
Referenz der Interna: Grid_line_span_engraver, Grid_point_engraver, GridLine, GridPoint, grid-line-interface, grid-point-interface.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Grid lines ] | [ Nach oben : Outside the staff ] | [ Text > ] |
Analysis brackets
Klammern über dem System werden in der Musikanalyse benutzt, um strukturelle Einheiten der Musik zu markieren. Einfache horizontale Klammern werden von LilyPond unterstützt.
\layout { \context { \Voice \consists "Horizontal_bracket_engraver" } } \relative c'' { c2\startGroup d\stopGroup }
Analysis brackets may be nested.
\layout { \context { \Voice \consists "Horizontal_bracket_engraver" } } \relative c'' { c4\startGroup\startGroup d4\stopGroup e4\startGroup d4\stopGroup\stopGroup }
See also
Schnipsel: Editorial annotations.
Referenz der Interna: Horizontal_bracket_engraver, HorizontalBracket, horizontal-bracket-interface, Staff.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Analysis brackets ] | [ Nach oben : Musical notation ] | [ Writing text > ] |
1.8 Text
Dieser Abschnitt erklärt, wie man Text (mit vielfältiger Formatierung) in Partituren einfügt.
Einige Textelemente, die hier nicht behandelt werden, finden sich in anderen Abschnitten: Vocal music, Titles and headers.
1.8.1 Writing text | ||
1.8.2 Formatting text | ||
1.8.3 Fonts |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Text ] | [ Nach oben : Text ] | [ Text scripts > ] |
1.8.1 Writing text
Dieser Abschnitt zeigt verschiedene Arten, wie Text in die Partitur eingefügt werden kann.
Achtung: Wenn man Zeichen mit Akzenten und Umlaute oder besondere Zeichen (wie etwa Text mit anderen Alphabeten) eingeben möchte, kann man die Zeichen einfach direkt in die Datei einfügen. Die Datei muss als UTF-8 gespeichert werden. Für mehr Information siehe Text encoding. |
Text scripts | ||
Text spanners | ||
Text marks | ||
Separate text |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Writing text ] | [ Nach oben : Writing text ] | [ Text spanners > ] |
Text scripts
Am einfachsten kann Text mit geraden Anführungsstrichen in eine Partitur eingefügt werden, wie das folgende Beispiel zeigt. Derartiger Text kann manuell über oder unter dem Notensystem platziert werden, die Syntax hierzu ist beschrieben in Direction and placement.
d8^"pizz." g f e a4-"scherz." f
Diese Syntax ist eine Kurzform, komplexere Formatierungen
können einem Text hinzugefügt werden, wenn man
explizit den \markup
-Befehl mit darauf folgenden
geschweiften Klammern einsetzt, wie beschrieben in
Formatting text.
a8^\markup { \italic pizz. } g f e a4_\markup { \tiny scherz. \bold molto } f
Standardmäßig haben Textbeschriftungen keinen Einfluss auf die
Positionierung der Noten. Man kann aber auch bestimmen, dass
die Breite des Textes mit berücksichtigt wird. Im nächsten
Beispiel fordert der erste Text keinen Platz, während der
zweite die Note nach rechts verschiebt. Das Verhalten wird mit
dem Befehl \textLengthOn
(Textlänge an) erreicht, rückgängig
kann es mit dem Befehl \textLengthOff
gemacht werden.
a8^"pizz." g f e \textLengthOn a4_"scherzando" f
Predefined commands
\textLengthOn
,
\textLengthOff
.
See also
Notationsreferenz: Formatting text, Direction and placement.
Schnipsel: Text.
Referenz der Interna: TextScript.
Known issues and warnings
Eine Überprüfung, ob sich auch alle Textbeschriftungen und Gesangstext innerhalb der Ränder der Noten befinden, braucht verhältnismäßig viel Rechenaufwand. Diese Überprüfung ist standardmäßig ausgestellt, damit LilyPond die Dateien schneller bearbeiten kann. Man kann die Überprüfung aber mit folgendem Code einschalten:
\override Score.PaperColumn #'keep-inside-line = ##t
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Text scripts ] | [ Nach oben : Writing text ] | [ Text marks > ] |
Text spanners
Einige Aufführungsanweisungen, etwa rallentando oder accelerando, werden als Text geschrieben, gefolgt von einer gestrichelten Linie, die anzeigt, wie weit sich die Anweisung auswirkt. Solche Objekte, „Strecker“ (engl. spanners) genannt, können von einer Note bis zu einer anderen mit folgender Anweisung erstellt werden:
\override TextSpanner #'(bound-details left text) = "rit." b1\startTextSpan e,\stopTextSpan
Der Text wird durch Objekteigenschaften beeinflusst. In den
Standardeinstellungen wird er kursiv ausgegeben, aber eine andere
Formatierung kann erreicht werden, indem man \markup
-Blöcke
einsetzt, wie beschrieben in Formatting text.
\override TextSpanner #'(bound-details left text) = \markup { \upright "rit." } b1\startTextSpan c e,\stopTextSpan
Auch der Stil der Linie kann ähnlich wie der Text mit den Objekteigenschaften geändert werden. Diese Syntax ist beschrieben in Line styles.
Predefined commands
\textSpannerUp
,
\textSpannerDown
,
\textSpannerNeutral
.
See also
Notationsreferenz: Line styles, Dynamics.
Schnipsel: Text.
Referenz der Interna: TextSpanner.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Text spanners ] | [ Nach oben : Writing text ] | [ Separate text > ] |
Text marks
Verschiedene Textelemente können der Partitur hinzugefügt werden, indem man die Syntax für Zeichen einsetzen, wie beschrieben in Rehearsal marks:
c4 \mark "Allegro" c c c
Diese Syntax ermöglicht es, beliebigen Text über eine Taktlinie
zu platzieren, weitere Formatierungsmöglichkeiten sind mit dem
\markup
-Befehl gegeben, wie beschrieben in
Formatting text:
Diese Syntax ermöglicht es auch, besondere Zeichen einzufügen, wie
etwa Coda-, Segno- oder Fermatenzeichen, indem das entsprechende
Symbol mit dem Befehl \musicglyph
angegeben wird, wie
beschrieben in
Music notation inside markup:
Derartige Objekte werden über dem höchsten System einer Partitur gesetzt – abhängig davon, ob sie mitten im Takt oder an seinem Ende notiert werden, werden sie zwischen Noten oder über der Taktlinie gesetzt. Wenn sie an einem Zeilenumbruch angegeben werden, wird das Zeichen zu Beginn der nächsten Zeile ausgegeben.
Selected Snippets
Printing marks at the end of a line or a score
Marks can be printed at the end of the current line, instead of the beginning of the following line. This is particularly useful when a mark has to be added at the end of a score – when there is no next line.
In such cases, the right end of the mark has to be aligned with the final bar line, as demonstrated on the second line of this example.
\relative c'' { \override Score.RehearsalMark #'break-visibility = #begin-of-line-invisible g2 c d,2 a' \mark \default \break g2 b, c1 \bar "||" \override Score.RehearsalMark #'self-alignment-X = #RIGHT \mark "D.C. al Fine" }
Aligning marks with various notation objects
If specified, text marks may be aligned with notation objects other
than bar lines. These objects include ambitus
,
breathing-sign
, clef
, custos
, staff-bar
,
left-edge
, key-cancellation
, key-signature
, and
time-signature
.
In such cases, text marks will be horizontally centered above the object. However this can be changed, as demonstrated on the second line of this example (in a score with multiple staves, this setting should be done for all the staves).
\relative c' { e1 % the RehearsalMark will be centered above the Clef \override Score.RehearsalMark #'break-align-symbols = #'(clef) \key a \major \clef treble \mark "↓" e1 % the RehearsalMark will be centered above the TimeSignature \override Score.RehearsalMark #'break-align-symbols = #'(time-signature) \key a \major \clef treble \time 3/4 \mark "↓" e2. % the RehearsalMark will be centered above the KeySignature \override Score.RehearsalMark #'break-align-symbols = #'(key-signature) \key a \major \clef treble \time 4/4 \mark "↓" e1 \break e1 % the RehearsalMark will be aligned with the left edge of the KeySignature \once \override Score.KeySignature #'break-align-anchor-alignment = #LEFT \mark "↓" \key a \major e1 % the RehearsalMark will be aligned with the right edge of the KeySignature \once \override Score.KeySignature #'break-align-anchor-alignment = #RIGHT \key a \major \mark "↓" e1 % the RehearsalMark will be aligned with the left edge of the KeySignature % and then shifted right by one unit. \once \override Score.KeySignature #'break-align-anchor = #1 \key a \major \mark "↓" e1 }
Printing marks on every staff
Although text marks are normally only printed above the topmost staff, they may also be printed on every staff.
\score { << \new Staff { c''1 \mark "molto" c'' } \new Staff { c'1 \mark "molto" c' } >> \layout { \context { \Score \remove "Mark_engraver" \remove "Staff_collecting_engraver" } \context { \Staff \consists "Mark_engraver" \consists "Staff_collecting_engraver" } } }
See also
Notationsreferenz: Rehearsal marks, Formatting text, Music notation inside markup, The Feta font.
Schnipsel: Text.
Referenz der Interna: RehearsalMark.
Known issues and warnings
Wenn ein Zeichen am Ende des letzten Taktes eines Stückes notiert wird (wo also keine nächste Zeile mehr existiert), wird das Zeichen überhaupt nicht gesetzt.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Text marks ] | [ Nach oben : Writing text ] | [ Formatting text > ] |
Separate text
Eine \markup
-Umgebung kann auch für sich alleine existieren,
außerhalb einer \score
-Umgebung, als ein Ausdruck auf der
höchsten Ebene.
\markup { Morgen, morgen, und morgen... }
Damit kann Text unabhängig von den Noten gesetzt werden. Das bietet sich vor allem in Situationen an, in denen mehrere Stücke in einer Datei vorkommen, wie beschrieben in Multiple scores in a book.
\score { c'1 } \markup { Morgen, übermorgen, und überübermorgen... } \score { c'1 }
Unabhängige Textabschnitte können über mehrere Seiten reichen, so dass man Textdokumente oder Bücher ausschließlich mit LilyPond setzen kann. Einzelheiten zu den vielfältigen Möglichkeiten finden sich in Multi-page markup.
Predefined commands
Selected Snippets
Stand-alone two-column markup
Stand-alone text may be arranged in several columns using
\markup
commands:
\markup { \fill-line { \hspace #1 \column { \line { O sacrum convivium } \line { in quo Christus sumitur, } \line { recolitur memoria passionis ejus, } \line { mens impletur gratia, } \line { futurae gloriae nobis pignus datur. } \line { Amen. } } \hspace #2 \column { \line { \italic { O sacred feast } } \line { \italic { in which Christ is received, } } \line { \italic { the memory of His Passion is renewed, } } \line { \italic { the mind is filled with grace, } } \line { \italic { and a pledge of future glory is given to us. } } \line { \italic { Amen. } } } \hspace #1 } }
See also
Notationsreferenz: Formatting text, File structure, Multiple scores in a book, Multi-page markup.
Schnipsel: Text.
Referenz der Interna: TextScript.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Separate text ] | [ Nach oben : Text ] | [ Text markup introduction > ] |
1.8.2 Formatting text
Dieser Abschnitt zeigt grundlegende und fortgeschrittene
Formatierung von Text, wobei der Textbeschriftungsmodus
(\markup
benutzt wird.
Text markup introduction | ||
Selecting font and font size | ||
Text alignment | ||
Graphic notation inside markup | ||
Music notation inside markup | ||
Multi-page markup |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Formatting text ] | [ Nach oben : Formatting text ] | [ Selecting font and font size > ] |
Text markup introduction
Eine \markup
-Umgebung wird benutzt, um Text mit einer
großen Anzahl von Formatierungsmöglichkeiten (im „markup-Modus“)
zu setzen.
Die Syntax für Textbeschriftungen ähnelt der normalen Syntax von
LilyPond: ein \markup
-Ausdruck wird in geschweifte Klammern
eingeschlossen ({… }
). Ein einzelnes Wort wird als
ein Minimalausdruck erachtet und muss deshalb nicht notwendigerweise
eingeklammert werden.
Anders als Text in Anführungsstrichen können sich in einer
Textbeschriftungsumgebung (\markup
) geschachtelte Ausdrücke
oder weitere Textbefehle befinden, eingeführt mit einem Backslash
(\
). Derartige Befehle beziehen sich nur auf den ersten
der folgenden Ausdrücke.
a1-\markup intenso a2^\markup { poco \italic più forte } c e1 d2_\markup { \italic "string. assai" } e b1^\markup { \bold { molto \italic agitato } } c
Eine \markup
-Umgebung kann auch Text in
Anführungszeichen beinhalten. Derartige Zeichenketten werden als
ein Textausdruck angesehen, und darum werden innerhalb von ihnen
Befehle oder Sonderzeichen (wie \
oder #
) so
ausgegeben, wie sie eingeben werden. Doppelte Anführungsstriche
können gesetzt werden, indem man ihnen einen Backslash voranstellt.
a1^"\italic Text..." a_\markup { \italic "... setzt \"kursive\" Buchstaben!" } a a
Damit eine Anzahl von Wörtern als ein einziger Ausdruck behandelt
wird, müssen alle Wörter zwischen geraden Anführungszeichen (Shift+2)
stehen oder ihnen muss ein Befehl vorangestellt werden. Die Art,
wie die Ausdrücke definiert sind, wirkt sich darauf aus, wie
sie übereinander gestapelt, mittig und aneinander ausgerichtet
werden. Im folgenden Beispiel verhält sich der zweite
\markup
-Ausdruck genauso wie der erste:
c1^\markup { \center-column { a bbb c } } c1^\markup { \center-column { a { bbb c } } } c1^\markup { \center-column { a \line { bbb c } } } c1^\markup { \center-column { a "bbb c" } }
Textbeschriftung kann auch durch Variablen definiert werden. Diese Variablen können dann direkt an Noten angefügt werden:
allegro = \markup { \bold \large Allegro } { d''8.^\allegro d'16 d'4 r2 }
Eine ausführliche Liste der \markup
-Befehle findet sich in
Text markup commands.
See also
Notationsreferenz: Text markup commands.
Schnipsel: Text.
Installierte Dateien: ‘scm/markup.scm’.
Known issues and warnings
Syntaxfehler im Textbeschriftungsmodus können sehr verwirrend sein.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Text markup introduction ] | [ Nach oben : Formatting text ] | [ Text alignment > ] |
Selecting font and font size
Einfache Änderungen des Schriftartschnitts können im Textbeschriftungsmodus vorgenommen werden:
d1^\markup { \bold { Più mosso } \italic { non troppo \underline Vivo } } r2 r4 r8 d,_\markup { \italic quasi \smallCaps Tromba } f1 d2 r
Die Größe von Buchstaben kann auf verschiedene Arten verändert werden:
- die Schriftgröße kann auf bestimmte deinierte Standardgrößen gesetzt werden,
- die Schriftgröße kann mit einem absoluten Wert gesetzt werden,
- die Schriftgröße kann relativ zur vorhergehenden Größe geändert werden.
Das Beispiel unten zeigt alle drei Möglichkeiten:
f1_\markup { \tiny espressivo \large e \normalsize intenso } a^\markup { \fontsize #5 Sinfonia \fontsize #2 da \fontsize #3 camera } bes^\markup { (con \larger grande \smaller emozione \magnify #0.6 { e sentimento } ) } d c2 r8 c bes a g1
Text kann auch hoch- bzw. tiefgestellt gesetzt werden. Die so markierten Buchstaben werden automatisch in einer kleineren Schriftgröße gesetzt, aber die normale Schriftgröße kann auch eingesetzt werden:
\markup { \column { \line { 1 \super st movement } \line { 1 \normal-size-super st movement \sub { (part two) } } } }
Der Textbeschriftungsmodus stellt eine einfache Möglichkeit zur Verfügung
unterschiedliche Schriftschnitte anzuwählen. Ohne besondere Einstellungen
wird automatisch eine Schriftart mit Serifen ausgewählt. Das Beispiel
unten zeigt die Verwendung der eigenen Zahlenschriftart von LilyPond,
den Einsatz von serifenloser Schriftart und von Schreibmaschinenschriftart.
Die letzte Zeile zeigt, dass sich die Standardeinstellung mit dem
Befehl \roman
wieder herstellen lässt.
\markup { \column { \line { Act \number 1 } \line { \sans { Scene I. } } \line { \typewriter { Verona. An open place. } } \line { Enter \roman Valentine and Proteus. } } }
Einige dieser Schriftarten, etwa die Zahlenschriftart oder die Schriftart für Dynamikzeichen, stellen nicht alle Zeichen zur Verfügung, wie beschrieben in New dynamic marks und Manual repeat marks.
Einige Schriftartbefehle können ungewollte Leerzeichen innerhalb von Wörtern
hervorrufen. Das kann vermieden werden, indem die einzelnen Elemente mit
dem Befehl \concat
zu einem Element verschmolzen werden:
\markup { \column { \line { \concat { 1 \super st } movement } \line { \concat { \dynamic p , } \italic { con dolce espressione } } } }
Eine ausführliche Liste der unterschiedlichen Befehl zur Beeinflussung der Schriftarten findet sich in Font.
Es ist auch möglich, eigene Schriftfamlien zu definieren, wie erklärt in Fonts.
Predefined commands
\teeny
,
\tiny
,
\small
,
\normalsize
,
\large
,
\huge
,
\smaller
,
\larger
.
See also
Notationsreferenz: Font, New dynamic marks, Manual repeat marks, Fonts.
Schnipsel: Text.
Referenz der Interna: TextScript.
Installierte Dateien: ‘scm/define-markup-commands.scm’.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Selecting font and font size ] | [ Nach oben : Formatting text ] | [ Graphic notation inside markup > ] |
Text alignment
Dieser Abschnitt zeigt, wie man Text im Textbeschriftungsmodus eingibt. Textobjekte können auch als eine Einheit verschoben werden, wie beschrieben in Moving objects.
Textbeschriftungsobjekte können auf verschiedene Weise ausgerichtet werden. Standardmäßig wird ein Textobjekt an seiner linken Ecke ausgerichtet, darum wird das erste und zweite Objekt gleichermaßen an der linken Ecke ausgerichtet.
d1-\markup { poco } f d-\markup { \left-align poco } f d-\markup { \center-align { poco } } f d-\markup { \right-align poco }
Die horizontale Ausrichtung kann mit einer Zahl auf einen exakten Wert festgelegt werden:
a1-\markup { \halign #-1 poco } e' a,-\markup { \halign #0 poco } e' a,-\markup { \halign #0.5 poco } e' a,-\markup { \halign #2 poco }
Manche Objekte haben eigene Ausrichtungsvorgänge und werden deshalb nicht von diesen Befehlen beeinflusst. Es ist möglich, solche Objekte als eine Einheit anzusprechen und zu bewegen, wie gezeigt in Text marks.
Die vertikale Ausrichtung ist etwas schwieriger. Textelemente
können komplett verschoben werden, es ist aber auch möglich, nur
einen Teil innerhalb der Textbeschriftung zu bewegen. In diesem
Fall muss dem zu verschiebenden Objekt ein Ankerpunkt zugewiesen
werden, welcher entweder ein anderes Textelement oder ein
unsichtbares Objekt sein kann (im Beispiel mit \null
erstellt).
Der letzte Text im Beispiel hat keinen Anker und wird deshalb auch nicht verschoben.
d2^\markup { Acte I \raise #2 { Scène 1 } } a' g_\markup { \null \lower #4 \bold { Très modéré } } a d,^\markup { \raise #4 \italic { Une forêt. } } a'4 a g2 a
Einige Befehle können sowohl die horizontale als auch die vertikale Ausrichtung von Textobjekten beeinflussen. Jedes Objekt, das auf diese Weise verschoben wird, benötigt einen Anker:
d2^\markup { Acte I \translate #'(-1 . 2) "Scène 1" } a' g_\markup { \null \general-align #Y #3.2 \bold "Très modéré" } a d,^\markup { \null \translate-scaled #'(-1 . 2) \teeny "Une forêt." } a'4 a g2 a
Ein Textbeschriftungsobjekt kann mehrere Zeilen beinhalten. Im folgenden
Beispiel wird jeder Ausdruck innerhalb von \markup
auf einer
eigenen Zeile gesetzt, entweder linksbündig oder zentriert:
\markup { \column { a "b c" \line { d e f } } \hspace #10 \center-column { a "b c" \line { d e f } } }
Eine Anzahl an Ausdrücken innerhalb von \markup
kann auch
gestreckt werden, so dass die gesamte Seitenbreite benutzt wird. Wenn
nur ein Objekt vorhanden ist, wird es zentriert gesetzt. Die Ausdrücke
selber können wiederum mehrzeilig sein und andere Textbeschriftungsbefehle
beinhalten.
\markup { \fill-line { \line { William S. Gilbert } \center-column { \huge \smallCaps "The Mikado" or \smallCaps "The Town of Titipu" } \line { Sir Arthur Sullivan } } } \markup { \fill-line { 1885 } }
Längere Texte können auch automatisch umgebrochen werden, wobei es möglich ist, die Zeilenbreite zu bestimmen. Der Text ist entweder linksbündig oder im Blocksatz, wie das nächste Beispiel illustriert:
\markup { \column { \line \smallCaps { La vida breve } \line \bold { Acto I } \wordwrap \italic { (La escena representa el corral de una casa de gitanos en el Albaicín de Granada. Al fondo una puerta por la que se ve el negro interior de una Fragua, iluminado por los rojos resplandores del fuego.) } \hspace #0 \line \bold { Acto II } \override #'(line-width . 50) \justify \italic { (Calle de Granada. Fachada de la casa de Carmela y su hermano Manuel con grandes ventanas abiertas a través de las que se ve el patio donde se celebra una alegre fiesta) } } }
Eine vollständige Liste der Textausrichtungsbefehle findet sich in Align.
See also
Handbuch zum Lernen: Moving objects.
Notationsreferenz: Align, Text marks.
Schnipsel: Text.
Installierte Dateien: ‘scm/define-markup-commands.scm’.
Referenz der Interna: TextScript.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Text alignment ] | [ Nach oben : Formatting text ] | [ Music notation inside markup > ] |
Graphic notation inside markup
Verschiedene graphische Objekte können im Textbeschriftungsmodus eingefügt werden.
Mit bestimmten Textbeschriftungsbefehlen kann man Textelementen Graphik hinzufügen, wie das nächste Beispiel zeigt:
\markup \fill-line { \center-column { \circle Jack \box "in the box" \null \line { Erik Satie \hspace #3 \bracket "1866 - 1925" } \null \rounded-box \bold Prelude } }
Es kann nötig sein, einem Text mehr Platz einzuräumen. Das geschieht mit verschiedenen Befehlen, wie das folgende Beispiel zeigt. Eine ausführliche Übersicht findet sich in Align.
\markup \fill-line { \center-column { \box "Charles Ives (1874 - 1954)" \null \box \pad-markup #2 "THE UNANSWERED QUESTION" \box \pad-x #8 "A Cosmic Landscape" \null } } \markup \column { \line { \hspace #10 \box \pad-to-box #'(-5 . 20) #'(0 . 5) \bold "Largo to Presto" } \pad-around #3 "String quartet keeps very even time, Flute quartet keeps very uneven time." }
Andere graphische Elemente oder Symbole können gesetzt werden, ohne dass
man Text benötigt. Wie mit allen Textbeschriftungen können Objekte
innerhalb von \markup
kombiniert werden.
\markup { \combine \draw-circle #4 #0.4 ##f \filled-box #'(-4 . 4) #'(-0.5 . 0.5) #1 \hspace #5 \center-column { \triangle ##t \combine \draw-line #'(0 . 4) \arrow-head #Y #DOWN ##f } }
Fortgeschrittene graphische Möglichkeiten bietet unter Anderem eine Funktion, mit der man externe Graphiken im Encapsulated PostScript (eps) -Format einbinden kann oder aber Graphiken direkt in den Quelltext unter Verwendung von PostScript-Code notiert. In diesem Fall kann es nötig sein, die Größe der Zeichnung explizit anzugeben, wie im Beispiel unten gezeigt:
c1^\markup { \combine \epsfile #X #10 #"./context-example.eps" \with-dimensions #'(0 . 6) #'(0 . 10) \postscript #" -2 3 translate 2.7 2 scale newpath 2 -1 moveto 4 -2 4 1 1 arct 4 2 3 3 1 arct 0 4 0 3 1 arct 0 0 1 -1 1 arct closepath stroke" } c
Eine ausführliche Liste der Graphik-Befehle findet sich in Graphic.
See also
Notationsreferenz: Graphic, Editorial annotations.
Schnipsel: Text.
Referenz der Interna: TextScript.
Installierte Dateien: ‘scm/define-markup-commands.scm’, ‘scm/stencil.scm’.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Graphic notation inside markup ] | [ Nach oben : Formatting text ] | [ Multi-page markup > ] |
Music notation inside markup
Auch Musikobjekte können innerhalb der Textbeschriftungsumgebung gesetzt werden.
Noten und Versetzungszeichen lassen sich mit \markup
einfügen:
a2 a^\markup { \note #"4" #1 = \note-by-number #1 #1 #1.5 } b1_\markup { \natural \semiflat \flat \sesquiflat \doubleflat } \glissando a1_\markup { \natural \semisharp \sharp \sesquisharp \doublesharp } \glissando b
Andere Notationsobjekte können auch eingefügt werden:
g1 bes ees-\markup { \finger 4 \tied-lyric #"~" \finger 1 } fis_\markup { \dynamic rf } bes^\markup { \beam #8 #0.1 #0.5 } cis d-\markup { \markalphabet #8 \markletter #8 }
Allgemeiner gesagt kann jedes verfügbare Notationssymbol unabhängig von der Notation als ein Textbeschriftungsobjekt eingefügt werden, wie unten gezeigt. Eine vollständige Liste der verfügbaren Symbole findet sich in The Feta font.
c2 c'^\markup { \musicglyph #"eight" } c,4 c,8._\markup { \musicglyph #"clefs.G_change" } c16 c2^\markup { \musicglyph #"timesig.neomensural94" }
Eine andere Möglichkeit, andere als Textsymbole zu schreiben, findet sich in Fonts explained.
Der Textbeschriftungsmodus unterstützt auch Diagramme für bestimmte Instrumente:
c1^\markup { \fret-diagram-terse #"x;x;o;2;3;2;" } c^\markup { \harp-pedal #"^-v|--ov^" } c c^\markup { \combine \musicglyph #"accordion.accDiscant" \combine \raise #0.5 \musicglyph #"accordion.accDot" \raise #1.5 \musicglyph #"accordion.accDot" }
Derartige Digramme sind dokumentiert in Instrument Specific Markup.
Sogar eine ganze Partitur kann in ein Textbeschriftungsobjekt eingefügt
werden. In diesem Fall muss die eingefügte \score
-Umgebung
eine \layout
-Umgebung haben, wie in diesem Beispiel:
c4 d^\markup { \score { \relative { c4 d e f } \layout { } } } e f | c d e f
Eine vollständige Liste der Musiksymbol-Befehle findet sich in Music.
See also
Notationsreferenz: Music, The Feta font, Fonts explained.
Schnipsel: Text.
Referenz der Interna: TextScript.
Installierte Dateien: ‘scm/define-markup-commands.scm’, ‘scm/fret-diagrams.scm’, ‘scm/harp-pedals.scm’.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Music notation inside markup ] | [ Nach oben : Formatting text ] | [ Fonts > ] |
Multi-page markup
Normale Textbeschriftungsobjekte können nicht getrennt werden, aber mit einer spezifischen Umgebung ist es möglich, Text auch über mehrere Seiten fließen zu lassen:
\markuplines { \justified-lines { A very long text of justified lines. ... } \wordwrap-lines { Another very long paragraph. ... } ... }
Die Syntax braucht eine Liste von Textbeschriftungen folgender Art:
- das Resultat eines Beschriftungslistenbefehls,
- eine Textbeschriftungsliste,
- eine Liste von Beschriftungslisten.
Eine vollständige Liste der Beschriftungslistenbefehle findet sich in Text markup list commands.
See also
Notationsreferenz: Text markup list commands, New markup list command definition.
Schnipsel: Text.
Referenz der Interna: TextScript.
Installierte Dateien: ‘scm/define-markup-commands.scm’.
Predefined commands
\markuplines
.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Multi-page markup ] | [ Nach oben : Text ] | [ Fonts explained > ] |
1.8.3 Fonts
Dieser Abschnitt zeigt, wie Schriftarten eingesetzt werden können und wie man sie in Partituren ändern kann.
Fonts explained | ||
Single entry fonts | ||
Entire document fonts |
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Fonts ] | [ Nach oben : Fonts ] | [ Single entry fonts > ] |
Fonts explained
Schriftarten werden von mehreren Bibliotheken verwaltet. FontConfig wird benützt, um die vorhandenen Schriftarten des Systems zu erkennen, die gewählte Schriftart wird dann mit Pango verarbeitet.
Notationsschriftarten können als eine Ansammlung von besonderen Zeichen
erklärt werden, wobei die Sonderzeichen in verschiedene Familien
klassifiziert werden. Die Syntax des folgenden Beispiels ermöglicht es,
direkt auf verschiedene nicht textuelle Sonderzeichen der
feta
-Schriftart zuzugreifen. Das ist die Standardschriftart
für Notationselemente in LilyPond.
a1^\markup { \vcenter { \override #'(font-encoding . fetaBraces) \lookup #"brace120" \override #'(font-encoding . fetaNumber) \column { 1 3 } \override #'(font-encoding . fetaDynamic) sf \override #'(font-encoding . fetaMusic) \lookup #"noteheads.s0petrucci" } }
Eine einfachere, aber weniger vielfältige Syntax wird beschrieben in Music notation inside markup.
Drei Textschriftarten sind verfügbar (auf Englisch family
genannt):
mit roman
eine Schriftart
mit Serifen (Standard ist New Century Schoolbook), mit sans
eine serifenlose (gerade) Schriftart und mit typewriter
eine
Schreibmaschinenschrift, in welcher die Buchstaben alle die gleiche
Weite haben. Die aktuelle Schriftart von sans
und
tpyewriter
wird durch Pango entspechend den Systemvorgaben
gewählt.
Jede Familie kann verschiedene Schriftschnitte besitzen. Im Englischen
wird unterschieden zwischen shape
für kursive Schnitte und
series
für fette Schnitte. Im folgenden Beispiel wird
demonstriert, wie man die verschiedenen Eigenschaften auswählen kann.
Der Wert, der font-size
übergeben wird, entspricht der geforderten
Änderung in Bezug auf die Standardschriftgröße.
\override Score.RehearsalMark #'font-family = #'typewriter \mark \markup "Ouverture" \override Voice.TextScript #'font-shape = #'italic \override Voice.TextScript #'font-series = #'bold d'2.^\markup "Allegro" \override Voice.TextScript #'font-size = #-3 c4^smaller
Eine ähnliche Syntax kann im Textbeschriftungsmodus eingesetzt werden, hier bietet es sich aber an, die einfacheren Befehle zu verwenden, die erklärt wurden in Selecting font and font size:
\markup { \column { \line { \override #'(font-shape . italic) \override #'(font-size . 4) Idomeneo, } \line { \override #'(font-family . typewriter) { \override #'(font-series . bold) re di } \override #'(font-family . sans) Creta } } }
Auch wenn es einfach ist, zwischen den vorefinierten Schriftarten umzuschalten, kann man auch eigene Schriftarten verwenden, wie erklärt in folgenden Abschnitten: Single entry fonts und Entire document fonts.
See also
Notationsreferenz: The Feta font, Music notation inside markup, Selecting font and font size, Font.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Fonts explained ] | [ Nach oben : Fonts ] | [ Entire document fonts > ] |
Single entry fonts
Jede Schriftart, die über das Betriebssystem installiert ist und von FontConfig erkannt wird, kann in einer Partitur eingefügt werden. Dazu verwendet man folgende Syntax:
\override Staff.TimeSignature #'font-name = #"Charter" \override Staff.TimeSignature #'font-size = #2 \time 3/4 a1_\markup { \override #'(font-name . "Vera Bold") { Vera Bold } }
Mit folgendem Befehl erhält man eine Liste aller verfügbaren Schriftarten des Betriebssystems:
lilypond -dshow-available-fonts x
Das letzte Argument kann ein beliebiges Zeichen sein, aber es darf nicht fehlen.
See also
Notationsreferenz: Fonts explained, Entire document fonts.
Schnipsel: Text.
Installierte Dateien: ‘lily/font-config-scheme.cc’.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ Specialist notation >> ] | ||
[ < Single entry fonts ] | [ Nach oben : Fonts ] | [ Specialist notation > ] |
Entire document fonts
Es ist auch möglich, die Schriftarten für die gesamte Partitur zu ändern.
In diesem Fall müssen die Familien roman
,
sans
und typewriter
in genaus dieser Reihenfolge
entsprechend der Syntax unten definiert werden. Einzelheiten zu
Schriftarten in Fonts explained.
\paper { myStaffSize = #20 #(define fonts (make-pango-font-tree "Times New Roman" "Nimbus Sans" "Luxi Mono" (/ myStaffSize 20))) } \relative c'{ c1-\markup { roman, \sans sans, \typewriter typewriter. } }
See also
Notationsreferenz: Fonts explained, Single entry fonts, Selecting font and font size, Font.
[ << Musical notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Entire document fonts ] | [ Nach oben : Top ] | [ Vocal music > ] |
2. Specialist notation
Dieser Abschnitt erklärt, wie Notation erstellt wird, die nur für ein bestimmtes Instrument oder einen Stil eingesetzt wird.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Specialist notation ] | [ Nach oben : Specialist notation ] | [ Common notation for vocal music > ] |
2.1 Vocal music
Dieser Abschnitt erklärt, wie Vokalmusik gesetzt werden kann und die Silben von Gesangstext an den Noten ausgerichtet werden.
2.1.1 Common notation for vocal music | ||
2.1.2 Entering lyrics | ||
2.1.3 Aligning lyrics to a melody | ||
2.1.4 Specific uses of lyrics | ||
2.1.5 Stanzas |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Vocal music ] | [ Nach oben : Vocal music ] | [ References for vocal music and lyrics > ] |
2.1.1 Common notation for vocal music
Dieser Abschnitt behandelt allgemeine Fragen der Notation von Vokalmusik und einige spezifische Vokalmusikstile.
References for vocal music and lyrics | ||
Opera | ||
Song books | ||
Spoken music | ||
Chants | ||
Ancient vocal music |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Common notation for vocal music ] | [ Nach oben : Common notation for vocal music ] | [ Opera > ] |
References for vocal music and lyrics
Viele Probleme können auftreten, wenn man Vokalmusik setzt. Einige davon werden in diesem Abschnitt behandelt, während weitere sich in anderen Abschnitten befinden:
- Die meisten Vokalmusikstile benutzen Text für den Gesangstext. Eine Einleitung hierzu findet sich in Setting simple songs.
-
Vokalmusik braucht oft die Benutzung von Textbeschriftung (dem
markup
-Modus) für den Gesangstext oder andere Textelemente (Namen von Figuren usw.). Die entsprechende Syntax ist beschrieben in Text markup introduction. - Liedblätter können erstellt werden, indem eine Gesangsstimme mit Akkorden kombiniert wird, Einzelheiten finden sich in Chord notation.
- ‚Ambitus‘ können zu Beginn der Stimmen hinzugefügt werden, dies findet sich erklärt in Ambitus.
- Gesangsstimmen können auch mit traditionellen Schlüsseln gesetzt werden, siehe Clef.
- Alte Vokalmusik ist unterstützt, Einzelheiten hierzu in Ancient notation.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < References for vocal music and lyrics ] | [ Nach oben : Common notation for vocal music ] | [ Song books > ] |
Opera
TBC
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Opera ] | [ Nach oben : Common notation for vocal music ] | [ Spoken music > ] |
Song books
TBC
Selected Snippets
Simple lead sheet
When put together, chord names, a melody, and lyrics form a lead sheet:
<< \chords { c2 g:sus4 f e } \relative c'' { a4 e c8 e r4 b2 c4( d) } \addlyrics { One day this shall be free __ } >>
See also
Notationsreferenz: Chord notation.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Song books ] | [ Nach oben : Common notation for vocal music ] | [ Chants > ] |
Spoken music
Effekte wie „Parlato“ bzw. „Sprechgesang“ erfordern, dass die Noten ohne Tonhöhe, aber mit dem notierten Rhythmus gesprochen werden. Solche Noten werden mit einem Kreuz als Notenkopf notiert, siehe hierzu Special note heads.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Spoken music ] | [ Nach oben : Common notation for vocal music ] | [ Ancient vocal music > ] |
Chants
TBC
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Chants ] | [ Nach oben : Common notation for vocal music ] | [ Entering lyrics > ] |
Ancient vocal music
TBC
See also
Notationsreferenz: Ancient notation.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient vocal music ] | [ Nach oben : Vocal music ] | [ Lyrics explained > ] |
2.1.2 Entering lyrics
Lyrics explained | ||
Setting simple songs | ||
Working with lyrics and variables |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Entering lyrics ] | [ Nach oben : Entering lyrics ] | [ Setting simple songs > ] |
Lyrics explained
LilyPond-Eingabedateien sind einfache Textdateien, in denen
Text verwendet wird, um Notationssymbole darzustellen. Für
die Notation von Gesangstext muss also sichergestellt sein,
dass ein Buchstabe, etwa d
, nicht als Note, sondern
als Buchstabe „d“ interpretiert wird. Darum gibt es einen
besonderen Modus, in dem Gesangstext geschreiben werden kann,
den „Lyric“-Modus (engl. lyrics = Gesangstext).
Der Gesangstextmodus kann mit der Umgebung \lyricmode
spezifiziert werden, oder indem \addlyrics
bzw.
\lyricsto
eingesetzt wird. In diesem Modus kann
Text mit Akzenten und Satzzeichen notiert werden, und das
Programm geht davon aus, dass es sich auch um Text handelt.
Silben werden wie Noten notiert, indem ihnen ihre Dauer
angehängt wird:
\lyricmode { Twin-4 kle4 twin- kle litt- le star2 }
Es gibt zwei generelle Methoden, die horizontale Orientierung der
Textsilben zu spezifizieren, entweder indem ihre Dauer angegeben wird,
wie oben in dem Beispiel, oder indem die Silben automatisch an den
Noten ausgerichtet werden. Dazu muss entweder \addlyrics
oder \lyricsto
eingesetzt werden.
Ein Wort oder eine Silbe beginnt mit einem alphabetischen Zeichen und endet mit einem Leerzeichen oder einer Zahl. Die folgenden Zeichen können beliebig sein, außer Leerzeichen und Zahlen.
Jedes Zeichen, das nicht Leerzeichen noch Zahl ist, wird als Bestandteil
der Silbe angesehen. Eine Silbe kann also auch mit }
enden,
was oft zu dem Fehler
\lyricmode { lah- lah}
führen kann. Hier wird }
als Teil der letzten Silbe gerechnet, so
dass die öffnende Klammer keine schließende Klammer hat und die Eingabedatei
nicht funktioniert.
Auch ein Punkt, der auf eine Silbe folgt, wird in die Silbe inkorporiert. Infolgedessen müssen auch um Eigenschaftsbezeichnungen Leerzeichen gesetzt werden. Ein Befehl heißt also nicht:
\override Score.LyricText #'font-shape = #'italic
sondern
\override Score . LyricText #'font-shape = #'italic
Um mehr als eine Silbe einer einzelnen Note zuzuweisen, kann
man die Silben mit geraden Anführungszeichen umgeben (Shift+2)
oder einen Unterstrich (_
) benutzen, um Leerzeichen
zwischen die Silben zu setzen, bzw. die Tilde (~
)
einsetzen, um einen Bindebogen zu erhalten.
\time 3/4 \relative c' { c2 e4 g2 e4 } \addlyrics { gran- de_a- mi- go } \addlyrics { pu- "ro y ho-" nes- to } \addlyrics { pu- ro~y~ho- nes- to }
Dieser Bindebogen ist definiert als das Unicode-Zeichen
U+203F
; es muss deshalb sichergestellt werden,
dass eine Schriftart benutzt wird (wie etwa DejaVuLGC),
die dieses Zeichen enthält. Mehr Information zur
Schriftartauswahl findet sich in Fonts.
Um Gesangstext mit Akzenten, Umlauten, besonderen Zeichen oder anderen Alphabeten zu setzen, müssen diese Zeichen direkt in den Text geschrieben werden und die Datei als UTF-8 gespeichert werden. Für weitere Information siehe Text encoding.
\relative c' { e4 f e d e f e2 } \addlyrics { He said: “Let my peo ple go”. }
Um gerade Anführungszeichen im Gesangstext zu verwenden, müssen sie mit einem Backslash markiert werden, beispielsweise:
\relative c' { \time 3/4 e4 e4. e8 d4 e d c2. } \addlyrics { "\"I" am so lone- "ly\"" said she }
Die vollständige Definition eines Wortanfangs im Gesangstextmodus ist jedoch etwas komplizierter.
Eine Silbe im Gesangstextmodus beginnt mit: einem alphabetischen Zeichen,
_
, ?
, !
, :
, '
, den Kontrollzeichen ^A
bis ^F
, ^Q
bis ^W
, ^Y
, ^^
,
einem beliebigen 8-Bit-Zeichen mit ASCII über 127, oder
Zeichenkombinationen, in denen ein Backslas mit `
, '
,
"
oder ^
kommbiniert wird.
Um Variablen zu definieren, in denen sich Gesangstext befindet, muss
die lyricmode
-Umgebung benutzt werden:
stropheEins = \lyricmode { Joy to the world the Lord is come } \score { << \new Voice = "eins" \relative c'' { \autoBeamOff \time 2/4 c4 b8. a16 g4. f8 e4 d c2 } \addlyrics { \stropheEins } >> }
See also
Notationsreferenz: Fonts.
Referenz der Interna: LyricText, LyricSpace.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Lyrics explained ] | [ Nach oben : Entering lyrics ] | [ Working with lyrics and variables > ] |
Setting simple songs
Am einfachsten kann Gesangstext zu Noten mit dem Befehl
\addlyrics { Gesangstext }
hinzugefügt werden. Hier ein Beispiel:
\time 3/4 \relative c' { c2 e4 g2. } \addlyrics { play the game }
Weitere Strophen können hinzugefügt werden, indem
weitere \addlyrics
-Abschnitte erstellt werden:
\time 3/4 \relative c' { c2 e4 g2. } \addlyrics { play the game } \addlyrics { speel het spel } \addlyrics { joue le jeu }
Der Befehl \addlyrics
funktioniert nicht in polyphonen
Situationen. In diesem Fall solte man \lyricsto
in Kombination
mit \lyricmode
benutzen, wie erklärt in
Lyrics explained.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Setting simple songs ] | [ Nach oben : Entering lyrics ] | [ Aligning lyrics to a melody > ] |
Working with lyrics and variables
Um Variablen zu definieren, die Gesangstext beinhalten, muss die
\lyricmode
-Umgebung benutzt werden. Man braucht hier
keine Dauern einzugeben, wenn die Variable mit
\addlyrics
oder \lyricsto
zu einer Melodie hinzugefügt
wird.
stropheEins = \lyricmode { Joy to the world the Lord is come } \score { << \new Voice = "eins" \relative c'' { \autoBeamOff \time 2/4 c4 b8. a16 g4. f8 e4 d c2 } \addlyrics { \stropheEins } >> }
Für eine andere Anordnung oder kompliziertere Sitationen bietet es sich an, zuerst Systeme und Gesangstextumgebungen zu definieren
\new ChoirStaff << \new Voice = "soprano" { Noten } \new Lyrics = "sopranoLyrics" { s1 } \new Lyrics = "tenorLyrics" { s1 } \new Voice = "tenor" { Noten } >>
und erst dann die entsprechenden Stimmen mit den dem Text zu kombinieren
\context Lyrics = sopranoLyrics \lyricsto "soprano" Gesangstext
See also
Referenz der Interna: LyricCombineMusic, Lyrics.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Working with lyrics and variables ] | [ Nach oben : Vocal music ] | [ Automatic syllable durations > ] |
2.1.3 Aligning lyrics to a melody
Gesangstext kann an einer Melodie automatisch ausgerichtet werden, aber
wenn die Dauern der Silben angegeben werden, kann man sie auch manuell
ausrichten. Die Ausrichtung kann angepasst werden mit leeren Noten
(mit \skip
oder _
), Trennungsstrichen und Fülllinien.
Gesantstext wird gesetzt, wenn er sich in dem Kontext Lyrics
befindet:
\new Lyrics \lyricmode …
Es gibt zwei Methoden, mit denen man die horizontale Ausrichtung der Silben beeinflussen kann:
-
Automatische Ausrichtung mit
\addlyrics
oder\lyricsto
. -
Definition der Silbendauer innerhalb von
\lyricmode
.
Automatic syllable durations | ||
Manual syllable durations | ||
Multiple syllables to one note | ||
Multiple notes to one syllable | ||
Skipping notes | ||
Extenders and hyphens | ||
Lyrics and repeats |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Aligning lyrics to a melody ] | [ Nach oben : Aligning lyrics to a melody ] | [ Manual syllable durations > ] |
Automatic syllable durations
Die Silben des Gesangstextes können automatisch an einer
Melodie ausgerichtet werden. Das erreicht man, indem
der Gesangstext mit dem \lyricsto
-Befehl einer
Melodie zugewiesen wird:
\new Lyrics \lyricsto Bezeichnung …
Hiermit werden die Silben an den Noten eines Voice
-Kontexts
mit der Bezeichnung Bezeichnung ausgerichtet. Dieser Kontext
muss schon vorher definiert sein, damit er aufgerufen werden kann.
Mit dem Befehl \lyricsto
wird in den \lyricmode
gewechselt, so dass der Gesangstextmodus nicht mehr extra angegeben
werden muss.
Das folgende Beispiel zeigt die Wirkung der unterschiedlichen Befehle, mit welchen Gesangtext mit einer Melodie kombiniert werden kann:
<< \new Voice = "one" \relative c'' { \autoBeamOff \time 2/4 c4 b8. a16 g4. f8 e4 d c2 } % not recommended: left aligns syllables \new Lyrics \lyricmode { Joy4 to8. the16 world!4. the8 Lord4 is come.2 } % wrong: durations needed \new Lyrics \lyricmode { Joy to the earth! the Sa -- viour reigns. } %correct \new Lyrics \lyricsto "one" { No more let sins and sor -- rows grow. } >>
Die zweite Strophe ist nicht richtig ausgerichtet, weil die Dauern der
Silben nicht angegeben wurden. Anstelle dessen könnte besser \lyricsto
eingesetzt werden.
Der \addlyrics
-Befehl ist eigentlich nur eine Abkürzung für eine
etwas kompliziertere LilyPond-Struktur:
{ Noten } \addlyrics { Gesangstext }
bedeutet das Gleiche wie
\new Voice = "bla" { Noten } \new Lyrics \lyricsto "bla" { Gesangstext }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Automatic syllable durations ] | [ Nach oben : Aligning lyrics to a melody ] | [ Multiple syllables to one note > ] |
Manual syllable durations
Gesangstext kann auch ohne \addlyrics
bezw. \lyricsto
notiert werden. In diesem Fall werden die Silben wie Noten notiert
– indem die Tonhöhen durch den Text der Silbe ersetzt werden – und
die Dauer jeder Silbe muss angegeben werden. Beispielsweise so:
play2 the4 game2. sink2 or4 swim2.
Die Ausrichtung an einer Melodie kann mit der
associatedVoice
-Eigenschaft bestimmt werden, etwa:
\set associatedVoice = #"lala"
Das Argument dieser Eigenschaft (hier "lala"
) muss die Bezeichnung
der entsprechenden Stimme sein. Ohne diese Einstellung werden
Fülllinien nicht richtig formatiert.
Hier ein Beispiel, dass die manuale Ausrichtung von Gesangstext zeigt:
<< \new Voice = "melody" { \time 3/4 c2 e4 g2. } \new Lyrics \lyricmode { \set associatedVoice = #"melody" play2 the4 game2. } >>
See also
Referenz der Interna: Lyrics.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Manual syllable durations ] | [ Nach oben : Aligning lyrics to a melody ] | [ Multiple notes to one syllable > ] |
Multiple syllables to one note
Um mehr als eine Silbe zu einer Note zuzuordnen, können die Silben
mit geraden Anführungszeichen ("
) umgeben werden oder ein
Unterstricht (_
) benutzt werden, um ein Leerzeichen zwischen
Silben zu setzen. Mit der Tilde (~
) kann ein Bindebogen
gesetzt werden. Dies erfordert, dass eine Schriftart vorhanden ist,
die das entsprechende Symbol (U+203F) beinhaltet, wie etwa DejaVuLGC.
\time 3/4 \relative c' { c2 e4 g2 e4 } \addlyrics { gran- de_a- mi- go } \addlyrics { pu- "ro y ho-" nes- to } \addlyrics { pu- ro~y~ho- nes- to }
See also
Referenz der Interna: LyricCombineMusic.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Multiple syllables to one note ] | [ Nach oben : Aligning lyrics to a melody ] | [ Skipping notes > ] |
Multiple notes to one syllable
Öfters wird eine einzige Silbe zu mehreren Noten gesungen, was als Melisma bezeichnet wird.
Melismen können direkt im Gesangstext definiert werden, indem
ein Unterstrich (_
) für jede Note notiert wird, die
übersprungen werden soll.
Zusätzlich kann auch eine Fülllinie eingefügt werden, die das Melisma anzeigt. Sie wird notiert, indem ein doppelter Unterstrich direkt hinter die Silbe des Melismas gesetzt wird. Das Beispiel unten zeigt drei Elemente, die eingesetzt werden können: ein doppelter Bindestrich erstellt Trennungsstriche zwischen Silben, mit Unterstrichen wird eine Note übersprungen und mit einem doppelten Unterstrich wird eine Fülllinie gesetzt. Alle diese Zeichen müssen von Leerzeichen umgeben sein, damit sie erkannt werden.
{ \set melismaBusyProperties = #'() c d( e) f f( e) e e } \addlyrics { Ky -- _ _ ri __ _ _ _ e }
Legatobögen können eingesetzt werden, wenn die Funktion
melismaBusyProperties
aufgerufen wird, wie in dem Beispiel oben.
Mit dem \lyricsto
-Befehl können Melismen aber auch automatisch
zugewiesen werden: unter übergebundene Noten oder Notengruppen mit einem
Legatobogen wird nur eine einzige Silbe gesetzt. Wenn eine Notengruppe
ohne Legatobogen als Melisma definiert werden soll, kann die Reichweite
mit den Befehlen \melisma
und \melismaEnd
eingegrenzt
werden:
<< \new Voice = "lala" { \time 3/4 f4 g8 \melisma f e f \melismaEnd e2 } \new Lyrics \lyricsto "lala" { la di __ daah } >>
Zusätzlich werden Noten als Melisma erachtet, wenn man sie manuell zu einer Balkengruppe verbindet und die automatische Bebalkung gleichzeitig ausgeschaltet ist. Siehe auch Setting automatic beam behavior.
Ein vollständiges Beispiel für einen SATB-Chorsatz findet sich in Vocal ensembles.
Predefined commands
See also
Known issues and warnings
Melismen werde nicht automatisch erkannt, und Fülllinien müssen manuell gestzt werden.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Multiple notes to one syllable ] | [ Nach oben : Aligning lyrics to a melody ] | [ Extenders and hyphens > ] |
Skipping notes
Damit der Gesangstext langsamer als die Melodie fortschreitet,
kann man \skip
-Befehle einfügen. Jeder \skip
-Befehl
schiebt den Text eine Note weiter. Der Befehl muss von einer
gültigen Dauer gefolgt werden, wie das Beispiel zeigt: dieser
Dauerwert wird jedoch ignoriert, wenn man \skip
im
Gesangstext einsetzt.
\relative c' { c c g' } \addlyrics { twin -- \skip 4 kle }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Skipping notes ] | [ Nach oben : Aligning lyrics to a melody ] | [ Lyrics and repeats > ] |
Extenders and hyphens
Wenn die letzte Silbe eines Wortes auf ein Melisma fällt, wird
das Melisma oft mit einer langen horizontalen Linie angezeigt,
die nach dem Wort beginnt und mit der letzten Note des Melismas
endet. Derartige Fülllinien werden mit einem doppelten
Unterstrich ( __
) eingegeben, wobei beachtet werden muss,
dass er von Leerzeichen umgeben ist.
Achtung: Melismen werden mit Fülllinien angezeigt, die als doppelter Unterstrich notiert sind. Kurze Melismen können auch notiert werden, indem eine Note übersprungen wird. Hierzu wird ein einfacher Unterstrich notiert und keine Fülllinie gezogen. |
Zentrierte Bindestriche zwischen den einzelnen Silben werden mit
einem doppelten Bindestrich ( --
) eingegeben, wobei beachtet
werden muss, dass er von Leerzeichen umgeben ist. Der Bindestrich
wird zwischen den Silben zentriert und seine Länge dem Notenabstand
angepasst.
In sehr eng notierter Musik können die Bindestriche ganz wegfallen.
Dieses Verhalten kann aber auch unterbunden werden, wenn den Eigenschaften
minimum-distance
(minimaler Abstand zwischen Silben) und
minimum-length
(Wert, unterhalb von dem Bindestriche wegfallen)
andere Werte erhalten.
See also
Referenz der Interna: LyricExtender, LyricHyphen
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Extenders and hyphens ] | [ Nach oben : Aligning lyrics to a melody ] | [ Specific uses of lyrics > ] |
Lyrics and repeats
TBC
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Lyrics and repeats ] | [ Nach oben : Vocal music ] | [ Divisi lyrics > ] |
2.1.4 Specific uses of lyrics
In vielen Fällen werden unterschiedliche Strophen mit einer
Liedmelodie angeordnet, wobei kleine Schwankungen in der
Silbenaufteilung auftreten können. Derartige Variationen
können mit \lyricsto
notiert werden.
Divisi lyrics | ||
Lyrics independent of notes | ||
Spacing out syllables | ||
Centering lyrics between staves |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Specific uses of lyrics ] | [ Nach oben : Specific uses of lyrics ] | [ Lyrics independent of notes > ] |
Divisi lyrics
Alternative (oder divisi Gesangstexte können notiert werden, indem Stimmenkontexten Bezeichnungen zugewiesen werden und die Texte dann jeweils der entsprechenden Bezeichnung zugewiesen wird.
\score{ << \new Voice = "melody" { \relative c' { c4 << { \voiceOne c8 e } \new Voice = "splitpart" { \voiceTwo c4 } >> \oneVoice c4 c | c } } \new Lyrics \lyricsto "melody" { we shall not o- ver- come } \new Lyrics \lyricsto "splitpart" { will } >> }
Mit diesem Trick kann auch ein unterschiedlicher Text für eine wiederholte Stelle gesetzt werden:
\score{ << \new Voice = "melody" \relative c' { c2 e | g e | c1 | \new Voice = "verse" \repeat volta 2 {c4 d e f | g1 | } a2 b | c1} \new Lyrics = "mainlyrics" \lyricsto melody \lyricmode { do mi sol mi do la si do } \context Lyrics = "mainlyrics" \lyricsto verse \lyricmode { do re mi fa sol } \new Lyrics = "repeatlyrics" \lyricsto verse \lyricmode { dodo rere mimi fafa solsol } >> }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Divisi lyrics ] | [ Nach oben : Specific uses of lyrics ] | [ Spacing out syllables > ] |
Lyrics independent of notes
In sehr komplexer Vokalmusik ist es manchmal erforderlich,
den Gesangstext vollständig unabhängig von den Noten zu
setzen. Das Beispiel unten zeigt das Vorgehen: die
Noten, die für lyricrhythm
definiert sind, verschwinden
im Devnull
-Kontext, während ihre Dauern immernoch
gültig sind, um die Silben daran auszurichten.
voice = { c''2 \tag #'music { c''2 } \tag #'lyricrhythm { c''4. c''8 } d''1 } lyr = \lyricmode { I like my cat! } << \new Staff \keepWithTag #'music \voice \new Devnull="nowhere" \keepWithTag #'lyricrhythm \voice \new Lyrics \lyricsto "nowhere" \lyr \new Staff { c'8 c' c' c' c' c' c' c' c' c' c' c' c' c' c' c' } >>
Diese Vorgehensweise ist nur empfehlenswert, wenn die Noten innerhalb
des Devnull
-Kontextes keine Melismen enthalten. Melismen
werden im Voice
-Kontext definiert. Wenn ein Gesangstext
mit einem Devnull
-Kontext verknüpft wird, wird die Verbindung
von Voice
- und Lyrics
-Kontext aufgehoben und somit
auch die Information zu Melismen. Darum werden implizite Melismen
ignoriert.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Lyrics independent of notes ] | [ Nach oben : Specific uses of lyrics ] | [ Centering lyrics between staves > ] |
Spacing out syllables
Um den Abstand zwischen Silben zu vergrößern, kann die
minimum-distance
-Eigenschaft des
LyricSpace
-Objekts gesetzt werden:
{ c c c c \override Lyrics.LyricSpace #'minimum-distance = #1.0 c c c c } \addlyrics { longtext longtext longtext longtext longtext longtext longtext longtext }
Damit diese Einstellung für alle Gesangtextzeilen in einer Partitur
wirkt, muss sie im layout
-Block vorgenommen werden.
\score { \relative c' { c c c c c c c c } \addlyrics { longtext longtext longtext longtext longtext longtext longtext longtext } \layout { \context { \Lyrics \override LyricSpace #'minimum-distance = #1.0 } } }
Selected Snippets
Eine Überprüfung, mit der sichergestellt wird, dass kein Text in die Seitenränder ragt, ist sehr rechenintensiv. Damit die Bearbeitungszeit von Dateien nicht so lange dauert, wird diese Überprüfung nicht automatisch vorgenommen. Man kann sie mit dem Befehl
\override Score.PaperColumn #'keep-inside-line = ##t
aktivieren. Damit Gesangstext auch nicht mit Taktlinien zusammenstößt, kann folgende Einstellung gesetzt werden:
\layout { \context { \Lyrics \consists "Bar_engraver" \consists "Separating_line_group_engraver" \override BarLine #'transparent = ##t } }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Spacing out syllables ] | [ Nach oben : Specific uses of lyrics ] | [ Stanzas > ] |
Centering lyrics between staves
TBC
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Centering lyrics between staves ] | [ Nach oben : Vocal music ] | [ Adding stanza numbers > ] |
2.1.5 Stanzas
Adding stanza numbers | ||
Adding dynamics marks to stanzas | ||
Adding singers’ names to stanzas | ||
Stanzas with different rhythms | ||
Printing stanzas at the end | ||
Printing stanzas at the end in multiple columns |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Stanzas ] | [ Nach oben : Stanzas ] | [ Adding dynamics marks to stanzas > ] |
Adding stanza numbers
Strophennummerierung kann hinzugefügt werden:
\new Voice { \time 3/4 g2 e4 a2 f4 g2. } \addlyrics { \set stanza = #"1. " Hi, my name is Bert. } \addlyrics { \set stanza = #"2. " Oh, ché -- ri, je t'aime }
Die Zahl wird direkt vor die erste Silbe gesetzt.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Adding stanza numbers ] | [ Nach oben : Stanzas ] | [ Adding singers’ names to stanzas > ] |
Adding dynamics marks to stanzas
Dynamikzeichen können zur Strophennummer hinzugefügt werden.
In LilyPond muss alles, was vor einer Strophe gesetzt wird,
als Teil der stanza
-Eigenschaft definiert werden, also
auch Dynamikbezeichnung. Aus technischen Gründen muss die
Strophe außerhalb von lyricmode
gesetzt werden:
text = { \set stanza = \markup { \dynamic "ff" "1. " } \lyricmode { Big bang } } << \new Voice = "tune" { \time 3/4 g'4 c'2 } \new Lyrics \lyricsto "tune" \text >>
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Adding dynamics marks to stanzas ] | [ Nach oben : Stanzas ] | [ Stanzas with different rhythms > ] |
Adding singers’ names to stanzas
Namen von Sängern können auch eingefügt werden. Sie werden zu Beginn
der Zeile gesetzt, ähnlich wie eine Instrumentenbezeichnung. Sie
werden mit der vocalName
-Eigenschaft erstellt. Eine Kurzversion
kann mit shortVocalName
definiert werden.
\new Voice { \time 3/4 g2 e4 a2 f4 g2. } \addlyrics { \set vocalName = #"Bert " Hi, my name is Bert. } \addlyrics { \set vocalName = #"Ernie " Oh, ché -- ri, je t'aime }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Adding singers’ names to stanzas ] | [ Nach oben : Stanzas ] | [ Printing stanzas at the end > ] |
Stanzas with different rhythms
Ignorieren von Melismen
Teilweise wird zu einer Silbe ein Melisma in einer Strophe
gesungen, während in einer anderen jede Note eine Silbe erhält.
Eine Möglichkeit ist, dass die Strophe mit mehr Text das
Melisma ignoriert. Das wird mit der
ignoreMelismata
-Eigenschaft im Lyrics
-Kontext
vorgenommen.
<< \relative c' \new Voice = "lahlah" { \set Staff.autoBeaming = ##f c4 \slurDotted f8.[( g16]) a4 } \new Lyrics \lyricsto "lahlah" { more slow -- ly } \new Lyrics \lyricsto "lahlah" { go \set ignoreMelismata = ##t fas -- ter \unset ignoreMelismata still } >>
Known issues and warnings
Anders als die meisten \set
-Befehle funktioniert
\set ignoreMelismata
nicht zusammen mit \once
.
Es ist notwendig, explizit \set
und \unset
zu
verwenden, um den Text einzugrenzen, für den Melismen ignoriert
werden sollen.
Switching to an alternative melody
Es ist auch möglich, die Silben von verschiedenen Textzeilen an
unterschiedlichen Melodien auszurichten. Das wird mit der
associatedVoice
-Eigenschaft vorgenommen:
Der Text der ersten Strophe wird an der Stimme „lahlah“ ausgerichtet:
\new Lyrics \lyricsto "lahlah" { Ju -- ras -- sic Park }
Auch die zweite Strophe wird an „lahlah“ ausgerichtet, aber für die Silbe „ran“ wird zu einer anderen Melodie gewechselt. Dazu wird der Befehl
\set associatedVoice = alternative
eingesetzt. alternative
ist die Bezeichnung der Stimme, die
die Triole enthält.
Dieser Befehl muss eine Silbe vor der Note notiert werden, auf die er sich auswirken soll, also vor „Ty“ in diesem Fall.
\new Lyrics \lyricsto "lahlah" { \set associatedVoice = alternative % applies to "ran" Ty -- ran -- no -- \set associatedVoice = lahlah % applies to "rus" sau -- rus Rex }
Zurück zu der alten Stimme kommt man, indem wieder „lahlah“ mit dem Text verknüpft wird.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Stanzas with different rhythms ] | [ Nach oben : Stanzas ] | [ Printing stanzas at the end in multiple columns > ] |
Printing stanzas at the end
Manchmal soll nur eine Strophe mit der Melodie gesetzt
werden und die weiteren Strophen als Text under den Noten
hinzugefügt werden. Dazu wird der Text in einer
markup
-Umgebung außerhalb der \score
-Umgebung
gesetzt. Es gibt zwei Arten, die Zeilen auszurichten,
wie das Beispiel zeigt:
melody = \relative c' { e d c d | e e e e | d d e d | c1 | } text = \lyricmode { \set stanza = #"1." Ma- ry had a lit- tle lamb, its fleece was white as snow. } \score{ << \new Voice = "one" { \melody } \new Lyrics \lyricsto "one" \text >> \layout { } } \markup { \column{ \line{ Verse 2. } \line{ All the children laughed and played } \line{ To see a lamb at school. } } } \markup{ \wordwrap-string #" Verse 3. Mary took it home again, It was against the rule." }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Printing stanzas at the end ] | [ Nach oben : Stanzas ] | [ Keyboard and other multi-staff instruments > ] |
Printing stanzas at the end in multiple columns
Wenn in einem Lied sehr viele Strophen vorkommen, werden sie oft in mehreren Spalten unter den Noten gesetzt. Eine nach außen versetzte Zahl zeigt die Strophennummer an. Dieses Beispiel zeigt eine Methode, diese Art von Notensatz zu produzieren.
melody = \relative c' { c c c c | d d d d } text = \lyricmode { \set stanza = #"1." This is verse one. It has two lines. } \score{ << \new Voice = "one" { \melody } \new Lyrics \lyricsto "one" \text >> \layout { } } \markup { \fill-line { \hspace #0.1 % moves the column off the left margin; % can be removed if space on the page is tight \column { \line { \bold "2." \column { "This is verse two." "It has two lines." } } \hspace #0.1 % adds vertical spacing between verses \line { \bold "3." \column { "This is verse three." "It has two lines." } } } \hspace #0.1 % adds horizontal spacing between columns; % if they are still too close, add more " " pairs % until the result looks good \column { \line { \bold "4." \column { "This is verse four." "It has two lines." } } \hspace #0.1 % adds vertical spacing between verses \line { \bold "5." \column { "This is verse five." "It has two lines." } } } \hspace #0.1 % gives some extra space on the right margin; % can be removed if page space is tight } }
See also
Referenz der Interna: LyricText, StanzaNumber.
2.2 Keyboard and other multi-staff instruments
Dieser Abschnitt behandelt verschiedene Notationsaspekte, die typischerweise in Noten für Tasteninstrumente und andere Instrumente auf mehreren Notensystemen auftreten, wie etwa Harfe und Vibraphon. Hier wird die gesamte Gruppe von Instrumenten, die auf mehreren Systemen notiert werden, als „Tasteninstrumente“ bezeichnet, auch wenn einige von ihnen keine Tasten aufweisen.
2.2.1 Common notation for keyboards | ||
2.2.2 Piano | ||
2.2.3 Accordion | ||
2.2.4 Harp |
2.2.1 Common notation for keyboards
Dieser Abschnitt zeigt allgemeine Eigenschaften des Notensatzes, die für die meisten Instrumente mit mehreren Systemen benötigt werden.
References for keyboards | ||
Changing staff manually | ||
Changing staff automatically | ||
Staff-change lines | ||
Cross-staff stems |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Common notation for keyboards ] | [ Nach oben : Common notation for keyboards ] | [ Changing staff manually > ] |
References for keyboards
Tasteninstrumente werden normalerweise auf einem Klaviersystem notiert. Es besteht aus zwei Notensystemen, die durch eine Klammer verbunden sind. Die gleiche Notation wird auch für andere Tasteninstrumente sowie Harfen verwendet. Orgelmusik wird normalerweise auf zwei Systemen innerhalb eines Klaviersystems notiert, denen noch ein drittes normales Notensystem für die Pedaltöne hinzugefügt wird.
Die Systeme eines Klaviersystems sind ziemlich unabhängig, aber Stimmen können bei Bedarf zwischen den Systemen wechseln.
Einige häufige Besonderheiten von Notation für Tasteninstrumenten wird an anderen Stellen besprochen:
- Noten für Tasteninstrumente haben oft mehrere Stimmen und die Anzahl der Stimmen kann sich häufig ändern. Das ist beschrieben in Collision resolution.
- Noten für Tasteninstrumente kann auch parallel, Takt für Takt notiert werden, wie gezeigt in Writing music in parallel.
- Fingersatz wird erklärt in Fingering instructions.
- Orgelpedal-Zeichen werden als Artikulationszeichen notiert, siehe List of articulations.
- Vertikale Rasterlinien können erstellt werden, siehe Grid lines.
- Noten für Tasteninstrumente beinhalten oft Laissez vibrer-Bögen und Bindebögen mit Arpeggio oder Tremolo, siehe hierzu Ties.
- Arpeggios können auch zwischen den Systemen verbunden werden, siehe hierzu Arpeggio.
- Tremolo-Zeichen finden sich in Tremolo repeats.
- Viele der Optimierungen, die für Tastenmusik nötig sein können, sind demonstriert in Real music example.
- Unsichtbare Noten können eingesetzt werden, um Überbindungen zwischen Stimmen zu setzen, siehe Other uses for tweaks.
See also
Handbuch zum Lernen: Real music example, Other uses for tweaks.
Notationsreferenz: Grouping staves, Instrument names, Collision resolution, Writing music in parallel, Fingering instructions, List of articulations, Grid lines, Ties, Arpeggio, Tremolo repeats.
Schnipsel: Keyboards.
Referenz der Interna: PianoStaff.
Known issues and warnings
Dynamikzeichen werden nicht automatische zwischen den Systemen
zentriert, aber es gibt hierzu Lösungen. Eine Möglichkeit ist
die Vorlage „Klavier mit zentrierten Lautstärkebezeichnungen“
im Abschnitt
Piano templates; eine andere Möglichkeit
ist es, die staff-padding
-Eigenschaft von
Lautstärkebezeichnungen zu erhöhen, wie gezeigt in
Moving objects.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < References for keyboards ] | [ Nach oben : Common notation for keyboards ] | [ Changing staff automatically > ] |
Changing staff manually
Stimmen können mit dem Befehl
\change Staff = Systembezeichnung
manuell erzielt werden. Die Zeichenkette Systembezeichnung
ist die Bezeichnung des Systems. Damit wird die aktuelle Stimme
vom aktuellen System zu dem System mit der Systembezeichnung
gewechselt. Üblicherweise ist die Systembezeichnung "up"
oder "down"
, "RH"
oder "LH"
.
Balken zwischen den Systemen werden automatisch erstellt:
\new PianoStaff << \new Staff = "up" { <e' c'>8 \change Staff = "down" g8 fis g \change Staff = "up" <g'' c''>8 \change Staff = "down" e8 dis e \change Staff = "up" } \new Staff = "down" { \clef bass % keep staff alive s1 } >>
Wenn die Balken verändert werden müssen, sollte zuerst die Richtung des Balkens beeinflusst werden. Die Balkenposition wird dann von der Mitte des Systems gemessen, dass näher am Balken ist. Ein einfaches Beispiel ist gezeigt in Fixing overlapping notation.
See also
Handbuch zum Lernen: Fixing overlapping notation.
Notationsreferenz: Stems, Automatic beams.
Schnipsel: Keyboards.
Referenz der Interna: Beam, ContextChange.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Changing staff manually ] | [ Nach oben : Common notation for keyboards ] | [ Staff-change lines > ] |
Changing staff automatically
Stimmen können angewiesen werden, automatisch zwischen dem oberen und unteren System zu wechseln. Die Syntax hierfür lautet:
\autochange …Noten…
Damit werden zwei Notensysteme innerhalb des aktiven Klaviersystems
erstellt, die „oben“ (up
) und „unten“ (down
) genannt
werden. Auf dem unteren System wird als Standard der Bassschlüssel
gesetzt. Der Wechsel wird automatisch basierend auf der Tonhöhe der Note
vorgenommen (als Wechselpunkt gilt das eingestrichene C). Dabei
wird die Richtung auch über Pausen hinweg im Voraus bestimmt.
\new PianoStaff { \autochange { g4 a b c' d'4 r a g } }
Ein \relative
-Abschnitt, der sich außerhalb des
\autochange
-Abschnittes befindet, hat keinen Einfluss auf die
Notenhöhen.
Wenn individuelle Kontrolle über die einzelen Systeme benötigt
wird, können sie manuell mit den Bezeichnungen "up"
und
"down"
erstellt werden. Der \autochange
-Befehl
wechselt dann die Stimme zwischen den Systemen.
Achtung: Wenn Systeme manuell erstellt werden, müssen sie genau
die Bezeichnungen |
Systeme müssen etwa manuell erstellt werden, damit die Tonart im unteren System gesetzt werden kann:
\new PianoStaff << \new Staff = "up" { \new Voice = "melodieEins" { \key g \major \autochange \relative c' { g8 b a c b d c e d8 r fis, g a2 } } } \new Staff = "down" { \key g \major \clef bass } >>
See also
Notationsreferenz: Changing staff manually.
Schnipsel: Keyboards.
Referenz der Interna: AutoChangeMusic.
Known issues and warnings
Die Auteilung auf die Systeme geschieht nicht unbedingt an optimaler Stelle. Für bessere Qualität müssen die Wechsel manuell eingestellt werden.
Akkrode werde nicht über die Systeme verteilt, sie werden dem System zugewiesen, auf dem sich ihre erste Note befinden würde.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Changing staff automatically ] | [ Nach oben : Common notation for keyboards ] | [ Cross-staff stems > ] |
Staff-change lines
Immer, wenn eine Stimme von einem Klaviersystem zu dem anderen wechselt, kann automatisch eine Linie zur Verdeutlichung des Stimmenverlaufs ausgegeben werden:
\new PianoStaff << \new Staff = "one" { \showStaffSwitch c1 \change Staff = "two" b2 a } \new Staff = "two" { \clef bass s1*2 } >>
Predefined commands
\showStaffSwitch
,
\hideStaffSwitch
.
See also
Schnipsel: Keyboards.
Referenz der Interna: Note_head_line_engraver, VoiceFollower.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Staff-change lines ] | [ Nach oben : Common notation for keyboards ] | [ Piano > ] |
Cross-staff stems
Akkorde, die über zwei Systeme reichen, können erstellt werden, indem die Länge der Hälse im unteren System vergrößert wird, bis sie zum oberen System hinauf reichen bzw. umgekehrt bei Hälsen, die nach unten zeigen.
\new PianoStaff << \new Staff { \relative c' { f8 e4 d8 d f e4 } } \new Staff { \relative c' { << { \clef bass % stems may overlap the other staff \override Stem #'cross-staff = ##t % extend the stems to reach other other staff \override Stem #'length = #12 % do not print extra flags \override Stem #'flag-style = #'no-flag % prevent beaming as needed a8 g4 f8 f bes\noBeam g4 } \\ { f,2 bes4 c } >> } } >>
Selected Snippets
Indicating cross-staff chords with arpeggio bracket
An arpeggio bracket can indicate that notes on two different staves are
to be played with the same hand. In order to do this, the
PianoStaff
must be set to accept cross-staff arpeggios and the
arpeggios must be set to the bracket shape in the PianoStaff
context.
(Debussy, Les collines d’Anacapri, m. 65)
\new PianoStaff << \set PianoStaff.connectArpeggios = ##t \override PianoStaff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket \new Staff { \relative c' { \key b \major \time 6/8 b8-.(\arpeggio fis'-.\> cis-. e-. gis-. b-.)\!\fermata^\laissezVibrer \bar "||" } } \new Staff { \relative c' { \clef bass \key b \major << { <a e cis>2.\arpeggio } \\ { <a, e a,>2. } >> } } >>
See also
Schnipsel: Keyboards.
Referenz der Interna: Stem.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Cross-staff stems ] | [ Nach oben : Keyboard and other multi-staff instruments ] | [ Piano pedals > ] |
2.2.2 Piano
Dieser Abschnitt zeigt Eigenheiten der Notation von Klavermusik
Piano pedals |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Piano ] | [ Nach oben : Piano ] | [ Accordion > ] |
Piano pedals
Klaviere (teilweise auch Vibraphone und Celesta) besitzen üblicherweise drei Pedale, das linke oder Haltepedal, das rechte oder Una-corda-Pedal und das Sostenuto-Pedal. Die englischen Begriff hierzu lauten: sustain, sostenuto und una corda.
c4\sustainOn d e g <c, f a>1\sustainOff c4\sostenutoOn e g c, <bes d f>1\sostenutoOff c4\unaCorda d e g <d fis a>1\treCorde
Die Pedalbezeichnung kann auf drei Arten vorgenommen werden: mit Text, Klammern oder einer Mischung aus beidem. Das Haltepedal und das Una-corda-Pedal benutzen als Standard die Textdarstellung, während das Sostenuto-Pedal den gemischten Stil benutzt:
c4\sustainOn g c2\sustainOff \set Staff.pedalSustainStyle = #'mixed c4\sustainOn g c d d\sustainOff\sustainOn g, c2\sustainOff \set Staff.pedalSustainStyle = #'bracket c4\sustainOn g c d d\sustainOff\sustainOn g, c2 \bar "|."
Die Platzierung der Befehle entspricht der Bewegung der Pedale während des Spielens. Um das Pedal bis zur letzten Tatklinie zu halten, muss der letzte Pedal-hoch-Befehl weggelassen werden.
See also
Notationsreferenz: Ties.
Schnipsel: Keyboards.
Referenz der Interna: SustainPedal, SustainPedalLineSpanner, SustainEvent, SostenutoPedal, SostenutoPedalLineSpanner, SostenutoEvent, UnaCordaPedal, UnaCordaPedalLineSpanner, UnaCordaEvent, PianoPedalBracket, Piano_pedal_engraver.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Piano pedals ] | [ Nach oben : Keyboard and other multi-staff instruments ] | [ Discant symbols > ] |
2.2.3 Accordion
Dieser Abschnitt behandelt Notation, die nur für Akkordeonmusik benötigt wird.
Discant symbols |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Accordion ] | [ Nach oben : Accordion ] | [ Harp > ] |
Discant symbols
Akkordeons werden oft mit mehreren Reihen an Zungen gebaut, welche Unisono oder eine Oktave höher bzw. tiefer erklingen. Jedes Akkordeon hat eigene Bezeichnungen für die Register (engl. shift) wie etwa Oboe, Bandonium usw. Eine Anzahl an Symbolen wird benutzt um die Wechsel anzuzeigen.
Selected Snippets
Symbole für Akkordeon-Diskantregister
Diskantregister für Akkordeon können mit \markup
dargestellt werden.
Die vertikale Position der einzelnen Elemente werden mit \raise
angepasst.
discant = \markup { \musicglyph #"accordion.accDiscant" } dot = \markup { \musicglyph #"accordion.accDot" } \layout { ragged-right = ##t } % 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 } \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 }
See also
Schnipsel: Keyboards.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Discant symbols ] | [ Nach oben : Keyboard and other multi-staff instruments ] | [ References for harps > ] |
2.2.4 Harp
Dieser Abschnitt zeigt Eigenheiten der Notation für Harfe.
References for harps | ||
Harp pedals |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Harp ] | [ Nach oben : Harp ] | [ Harp pedals > ] |
References for harps
Einige übliche Notationseigenheiten für Harfe sind woanders behandelt:
- Glissando ist die üblichste Harfentechnik, siehe Glissando.
- Ein Bisbigliando wird als ein Tremolo notiert, siehe Tremolo repeats
- Flageolettöne werden hier beschrieben: Harmonics.
- Für Arpeggio und non-arpeggio, siehe Arpeggio.
See also
Notationsreferenz: Tremolo repeats Glissando Arpeggio Harmonics
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < References for harps ] | [ Nach oben : Harp ] | [ Unfretted string instruments > ] |
Harp pedals
Harfe haben sieben Saiten in einer Oktave, die entweder als normaler Ton, oder aber erhöht bzw. erniedrigt klingen können. Bei einer Hakenharfe kann man jede Saite einzeln einstellen, bei Pedalharfen aber wird jede Saite mit der gleichen Notenbezeichnung von einem einzigen Pedal kontrolliert. Vom Spieler aus gesehen von rechts nach links sind die Pedale: D, C und H für die linke und E, F, G und A für die rechte Seite. Die Position des Pedals kann mit Textbeschriftungselementen:
\textLengthOn cis1_\markup \concat \vcenter { [D \flat C \sharp B|E \sharp F \sharp G A \flat] } c!1_\markup \concat \vcenter {[ C \natural ]}
oder Pedaldiagrammen angezeigt werden:
\textLengthOn cis1_\markup { \harp-pedal #"^v-|vv-^" } c!1_\markup { \harp-pedal #"^o--|vv-^" }
Der \harp-pedal
-Befehl braucht eine Anzahl an Zeichen, von
welchen ^
die höchste Pedalposition (erniedrigte Tonhöhe),
-
die mittlere Pedalposition (normale Tonhöhe, v
die
tiefste Pedalposition (erhöhter Ton) anzeigt. |
ist ein
Trenner. Ein o
vor der Definition umrandet das Symbol.
See also
Notationsreferenz: Text scripts Instrument Specific Markup.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Harp pedals ] | [ Nach oben : Specialist notation ] | [ Common notation for unfretted strings > ] |
2.3 Unfretted string instruments
Dieser Abschnitt stellt Information und Referenzen zur Verfügung, die beim Setzen von Noten für Saiteninstrumente ohne Bund herangezogen werden können.
2.3.1 Common notation for unfretted strings |
2.3.1 Common notation for unfretted strings
Es gibt wenige Spezifikat für die Notation von Saiteninstrumenten ohne Bund. Die Noten werden auf einem System notiert und meistens ist auch nur eine Stimme erforderlich. Zwei Stimmen können für Doppelgriff- oder Divisi-Stellen erforderlich sein.
References for unfretted strings | ||
Bowing indications | ||
Harmonics | ||
Snap (Bartok) pizzicato |
References for unfretted strings
Die meisten Notationseigenschaften, die für Orchersterstreicher eingesetzt werden, sind an anderer Stelle beschrieben:
- Textanweisungen wie „pizz.“ oder „arco“ werden als einfacher Text eingefügt, siehe Text scripts.
- Fingersatz, auch das Zeichen für den Daumen, ist erklärt in Fingering instructions.
- Doppelgriffe werden normalerweise als Akkord notiert, siehe hierzu Chorded notes. Anweisungen, wie Akkorde gespielt werden sollen, können auch hinzugefügt werden, siehe Arpeggio.
- Eine Vorlage für Streichquartett findet sich in String quartet. Andere sind als Schnipsel zur Verfügung gestellt.
See also
Handbuch zum Lernen: String quartet.
Notationsreferenz: Text scripts, Fingering instructions, Chorded notes, Arpeggio.
Schnipsel: Unfretted strings.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < References for unfretted strings ] | [ Nach oben : Common notation for unfretted strings ] | [ Harmonics > ] |
Bowing indications
Hinweise zur Bogenfügung können als Artikulationen erstellt werden, wie beschrieben in Articulations and ornamentations.
Die Befehle \upbow
und \downbow
werden mit Legatobögen
in folgender Weise eingesetzt:
c4(\downbow d) e(\upbow f)
und das nächste Beispiel zeigt drei Arten, eine offene A-Saite auf der Geige anzuzeigen:
a4 \open a^\markup { \teeny "II" } a2^\markup { \small "sul A" }
Predefined commands
\downbow
,
\upbow
,
\open
.
See also
Notation Reference: Articulations and ornamentations, Slurs.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Bowing indications ] | [ Nach oben : Common notation for unfretted strings ] | [ Snap (Bartok) pizzicato > ] |
Harmonics
Natürliches Flageolett
Flageolett-Töne können auf verschiedene Arten notiert werden. Üblicherweise werden sie mit einem Rautenkopf notiert, wenn ein Ton angezeigt werde, bei dem die Saite berührt wird, wo sie sonst abgegriffen würde.
Achtung: Flageolett-Töne müssem innerhalb von Akkorden definiert werden, auch wenn nur eine einzelne Note vorhanden ist. |
<d\harmonic>4 <e\harmonic>2. \set harmonicDots = ##t <d\harmonic>4 <e\harmonic>2.
Alternativ kann auch eine normale Noten die Tonhöhe anzeigen, die erklingen soll, wobei ein kleiner Kreis angibt, dass es sich um einen Flageolett-Ton handelt:
d2^\flageolet d_\flageolet
Künstliches Flageolett
Künstliche Flageoletttöne werden mit zwei Noten notiert, von denen einen einen normalen Notenkopf besitzt und die Griffposition des Fingers angibt, während die andere in Rautenform die Position des leicht aufgesetzten Fingers anzeigt.
<e a\harmonic>2 <c g'\harmonic>
See also
Glossar: harmonics.
Notationsreferenz: Special note heads, References for unfretted strings.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Harmonics ] | [ Nach oben : Common notation for unfretted strings ] | [ Fretted string instruments > ] |
Snap (Bartok) pizzicato
Selected Snippets
Bartók-Pizzicato
Das Bartók-Pizzicato ‚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.
#(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 % This does NOT work: %<c e g>\snapPizzicato <c' e g>-\snapPizzicato <c' e g>^\snapPizzicato <c, e g>_\snapPizzicato }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Snap (Bartok) pizzicato ] | [ Nach oben : Specialist notation ] | [ Common notation for fretted strings > ] |
2.4 Fretted string instruments
Dieser Abschnitt erklärt bestimmte Eigenheiten der Notation für gebundene Saiteninstrumente.
2.4.1 Common notation for fretted strings | ||
2.4.2 Guitar | ||
2.4.3 Banjo |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Fretted string instruments ] | [ Nach oben : Fretted string instruments ] | [ References for fretted strings > ] |
2.4.1 Common notation for fretted strings
Dieser Abschnitt zeigt Besonderheiten der Notation, die allen gebundenen Saiteninstrumenten eigen ist.
References for fretted strings | ||
String number indications | ||
Default tablatures | ||
Custom tablatures | ||
Fret diagram markups | ||
Predefined fret diagrams | ||
Automatic fret diagrams | ||
Right-hand fingerings |
References for fretted strings
Noten für gebundene Saiteninstrumente wird normalerweise auf
einem einzelnen System notiert, entweder als traditionelles
Notensystem oder in Tabulaturform. Manchmal werden beide
Arten miteinander verbunden, und besonders in populärer
Musik ist es üblich, über dem traditionellen System Griffsymbole
zu setzen. Gitarre und Banjo sind transponierende Instrumente,
die eine Oktave tiefer klingen als sie notiert werden. Partituren
für diese Instrumente sollten den „Tenorschlüssel“
("treble_8"
) benutzen. Einige Spezifika für gebundene
Instrumente sind an anderer Stelle erklärt:
- Fingersatz kann notiert werden, siehe Fingering instructions.
- Anweisungen für Laissez vibrer-Bögen und Bögen zwischen Arpeggios und Tremolos sind beschrieben in Ties.
- Hinweise, wie mehrere Stimmen gesetzt werden können, finden sich in Collision resolution.
- Instructions for indicating harmonics can be found in Harmonics.
See also
Notationsreferenz: Fingering instructions, Ties, Collision resolution, Instrument names, Writing music in parallel, Arpeggio, List of articulations, Clef.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < References for fretted strings ] | [ Nach oben : Common notation for fretted strings ] | [ Default tablatures > ] |
String number indications
Die Nummer der Saite, auf der gespielt werden soll, kann
angezeigt werden, indem \Zahl
an eine Note
innerhalb eines Akkord-Konstrukts gesetzt wird:
\clef "treble_8" <c\5>4 <e\4> <g\3>2 <c,\5 e\4 g\3>1
Wenn Fingersatz und Saitennummer zusammen benutzt werden, wird ihre Position anhand der Reihenfolge entschieden, mit der sie im Code auftauchen:
\clef "treble_8" <g\3-0>2 <g-0\3>
Selected Snippets
Controlling the placement of chord fingerings
The placement of fingering numbers can be controlled precisely.
\relative c' { \set fingeringOrientations = #'(left) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(down right up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(up) <c-1 e-3 a-5>4 \set fingeringOrientations = #'(left) <c-1>2 \set fingeringOrientations = #'(down) <e-3>2 }
Allowing fingerings to be printed inside the staff
By default, vertically oriented fingerings are positioned outside the staff. However, this behavior can be canceled.
\relative c' { <c-1 e-2 g-3 b-5>2 \once \override Fingering #'staff-padding = #'() <c-1 e-2 g-3 b-5>2 }
See also
Notationsreferenz: Fingering instructions.
Schnipsel: Fretted strings.
Referenz der Interna: StringNumber, Fingering.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < String number indications ] | [ Nach oben : Common notation for fretted strings ] | [ Custom tablatures > ] |
Default tablatures
Tabulatur-Notation wird für die Notation von Zupfinstrumenten benutzt. Tonhöhen werden hier nicht durch Notenköpfe, sondern durch Zahlen notiert. Diese Zahlen zeigen an, auf welcher Saite und welchem Bund der Ton gespielt werden soll. LilyPond bringt beschränkte Unterstützung für Tabulaturen mit.
Die Saitennummer, die mit einer Note assoziiert ist, wird durch einen Backslash, gefolgt von einer Zahl, notiert. In der Standardeinstellung ist die erste Saite die höchste Saite und als Stimmung wird die übliche Gitarrenstimmung auf sechs Saiten angenommen. Die Noten werden in einer Tabulatur gesetzt, indem TabStaff und TabVoice-Kontexte verwendet werden.
\new TabStaff { a,4\5 c'\2 a\3 e'\1 e\4 c'\2 a\3 e'\1 }
Wenn keine Saite für eine Note angegeben wird, wird die Note der
Saite zugeordnet, welche die Note auf einem Bund erzeugen kann,
der größer oder gleich als der Wert von minimumFret
ist. Der Standardwert für minimumFret
beträgt 0.
\new StaffGroup << \new Staff \relative c { \clef "treble_8" c16 d e f g4 c,16 d e f g4 } \new TabStaff \relative c { c16 d e f g4 \set TabStaff.minimumFret = #5 c,16 d e f g4 } >>
Flageolett und Gleiten (Slide) kann zur Tabulatur hinzugefügt werden:
\new TabStaff { \new TabVoice { <c g'\harmonic> d\2\glissando e\2 } }
Selected Snippets
Stem and beam behavior in tablature
The direction of stems is controlled the same way in tablature as in traditional notation. Beams can be made horizontal, as shown in this example.
\new TabStaff { \relative c { g16 b d g b d g b \stemDown \override Beam #'damping = #+inf.0 g,,16 b d g b d g b } }
Polyphony in tablature
Polyphony is created the same way in a TabStaff
as in a regular
staff.
upper = \relative c' { \time 12/8 \key e \minor \voiceOne r4. r8 e, fis g16 b g e e' b c b a g fis e } lower = \relative c { \key e \minor \voiceTwo r16 e d c b a g4 fis8 e fis g a b c } \score { << \new StaffGroup = "tab with traditional" << \new Staff = "guitar traditional" << \clef "treble_8" \context Voice = "upper" \upper \context Voice = "lower" \lower >> \new TabStaff = "guitar tab" << \context TabVoice = "upper" \upper \context TabVoice = "lower" \lower >> >> >> }
See also
Notationsreferenz: Stems.
Schnipsel: Fretted strings.
Referenz der Interna: TabNoteHead, TabStaff, TabVoice, Beam.
Known issues and warnings
Akkorde werden nicht gesondert behandelt, sodass die Saitenauswahlfunktion eventuell die selbe Saite für zwei Töne eines Akkordes auswählen kann.
Damit die Kombination von Stimmen (\partcombine
) richtig funktioniert,
müssen speziell erstellte Stimmen innerhalb des Tabulatursystems
(TabStaff
) benutzt werden:
melodia = \partcombine { e4 g g g }{ e4 e e e } << \new TabStaff << \new TabVoice = "one" s1 \new TabVoice = "two" s1 \new TabVoice = "shared" s1 \new TabVoice = "solo" s1 { \melodia } >> >>
Spezialeffekte für Gitarre beschränken sich auf Flageolett und Slide.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Default tablatures ] | [ Nach oben : Common notation for fretted strings ] | [ Fret diagram markups > ] |
Custom tablatures
LilyPond errechnet automatisch den Bund für eine Note auf Grundlage
der Saite, zu welcher der Ton zugeordnet ist. Um das tun zu können,
muss die Stimmung der Saiten angegeben werden. Die Stimmung wird
in der StringTunings
-Eigenschaften bestimmt.
LilyPond hat vordefinierte Stimmungen für Banjo, Mandoline, Gitarre und Bassgitarre. Für diese Stimmungen wird automatisch die richtige Transposition eingesetzt. Das nächste Beispiel ist für Bassgitarre, welche eine Oktave niedriger erklingt, als sie geschrieben ist:
<< \new Staff { \clef "bass_8" \relative c, { c4 d e f } } \new TabStaff { \set TabStaff.stringTunings = #bass-tuning \relative c, { c4 d e f } } >>
Die Standardstimmung ist die Gitarrenstimmung (guitar-tuning
)
in der EADGHE-Stimmung. Andere vordefinierte Stimmung sind:
guitar-open-g-tuning
, mandolin-tuning
und
banjo-open-g-tuning
. Die vordefinierten Stimmungen finden
sich in scm/output-lib.scm
.
Die Stimmung ist eine Scheme-Liste von Tonhöhen der Saiten, eine für jede Saite, geordnet von Saitennummer 1 bis n, wobei 1 die höchste Saite der Tabulatur ist und n die unterste. Normalerweise wird so die Stimmung vom höchsten bis zum tiefsten Ton angegeben, aber bei einige Instrumente (etwa Ukulele) werden die Saiten nicht aufgrund der Tonhöhe angeordnet.
Eine Tonhöhe in der Liste der Saitenstimmungen ist der Unterschied der entsprechenden Tonhöhe zum eingestrichenen C gemessen in Halbtönen. Die Tonöhe muss eine Ganzzahl sein. LilyPond errechnet die Tonhöhe einer Saite, indem die Tonhöhe der Saitenstimmung zu der Tonhöhe von c’ hinzugerechnet wird.
LilyPond erschließt die Anzahl der Saiten einer Tabulatur
anhand der Anzahl der Saitenstimmungszahlen in stringTunings
.
Jede beliebige Saitenstimmung kann erzeugt werden. Als Beispiel
etwa kann die Saitenstimmung für ein viersaitiges Instrument
mit den Tonhöhen a''
, d''
, g'
und c'
so definiert werden:
mynotes = { c'4 e' g' c'' | e'' g'' b'' c''' } << \new Staff { \clef treble \mynotes } \new TabStaff { \set TabStaff.stringTunings = #'(21 14 7 0) \mynotes } >>
See also
Installierte Dateien: ‘scm/output-lib.scm’.
Schnipsel: Fretted strings.
Referenz der Interna: Tab_note_heads_engraver.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Custom tablatures ] | [ Nach oben : Common notation for fretted strings ] | [ Predefined fret diagrams > ] |
Fret diagram markups
Bunddiagramme können zu Notation als Textbeschriftung hinzugefügt werden. Die Beschriftung enthält Information zu dem gewünschten Bunddiagramm. Es gibt drei unterschiedliche Darstellungsarten: normal, knapp und ausführlich. Die drei Arten erzeugen die gleiche Ausgabe, aber mit jeweils mehr oder weniger Einzelheiten. Einzelheiten zu Textbeschriftunsbefehlen findet sich in Text markup commands.
Die Standard-Bunddiagrammbeschriftung beinhaltet die Saitennummer und die Bundnummer für jeden Punkt, der notiert werden soll. Zusätzlich können offenen und nicht gespielte (schwingende) Saiten angezeigt werden.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram #"6-x;5-3;4-2;3-o;2-1;1-o;" < d a d' f'> ^\markup \fret-diagram #"6-x;5-x;4-o;3-2;2-3;1-1;" } >>
Barre kann hinzugefügt werden:
<< \context ChordNames { \chordmode { f1 g } } \context Staff { \clef "treble_8" < f, c f a c' f'>1 ^\markup \fret-diagram #"c:6-1-1;6-1;5-3;4-3;3-2;2-1;1-1;" < g, d g b d' g'> ^\markup \fret-diagram #"c:6-1-3;6-3;5-5;4-5;3-4;2-3;1-3;" } >>
Die Größe des Bunddiagrammes und die Anzahl der Bünde im Diagramm kann geändert werden:
<< \context ChordNames { \chordmode { f1 g } } \context Staff { \clef "treble_8" < f, c f a c' f'>1 ^\markup \fret-diagram #"s:1.5;c:6-1-1;6-1;5-3;4-3;3-2;2-1;1-1;" < g, b, d g b g'> ^\markup \fret-diagram #"h:6;6-3;5-2;4-o;3-o;2-o;1-3;" } >>
Die Anzahl der Saiten kann geändert werden, um sie für andere Instrumente anzupassen, wie etwas Banjo oder Ukulele.
<< \context ChordNames { \chordmode { a1 } } \context Staff { %% A chord for ukelele a'1 ^\markup \fret-diagram #"w:4;4-2-2;3-1-1;2-o;1-o;" } >>
Fingersatz kann auch angezeigt werden, und die Position der Fingersatzzahlen kann kontrolliert werden.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram #"f:1;6-x;5-3-3;4-2-2;3-o;2-1-1;1-o;" < d a d' f'> ^\markup \fret-diagram #"f:2;6-x;5-x;4-o;3-2-2;2-3-3;1-1-1;" } >>
Die Größe und Position der Punkte kann geändert werden:
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram #"d:0.35;6-x;5-3;4-2;3-o;2-1;1-o;" < d a d' f'> ^\markup \fret-diagram #"p:0.2;6-x;5-x;4-o;3-2;2-3;1-1;" } >>
Die Beschriftungsfunktion fret-diagram-terse
(knappe Version)
lässt die Saitennummern aus: das Vorhandensein einer Saite wird
durch ein Semikolon ausgedrückt. Für jede Saite des Diagramms
muss ein Semikolon gesetzt werden. Das erste Semikolon entspricht
der höchsten Saite, das letze der ersten Saite. Stumme und
offene Saiten sowie Bundnummern können angezeigt werden.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram-terse #"x;3;2;o;1;o;" < d a d' f'> ^\markup \fret-diagram-terse #"x;x;o;2;3;1;" } >>
Barre kann im knappen Modus auch angezeigt werden:
<< \context ChordNames { \chordmode { f1 g } } \context Staff { \clef "treble_8" < f, c f a c' f'>1 ^\markup \fret-diagram-terse #"1-(;3;3;2;1;1-);" < g, d g b d' g'> ^\markup \fret-diagram-terse #"3-(;5;5;4;3;3-);" } >>
Fingersatz kann im knappen Modus hinzugefügt werden:
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \override Voice.TextScript #'(fret-diagram-details finger-code) = #'below-string \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram-terse #"x;3-3;2-2;o;1-1;o;" < d a d' f'> ^\markup \fret-diagram-terse #"x;x;o;2-2;3-3;1-1;" } >>
Andere Eigenschaften der Bunddiagramme müssen im knappen Modus
mit \override
-Befehlen angegeben werden.
Die Beschriftungsfunktion fret-diagram-verbose
(ausführlicher Stil) ist in der
Form eine Scheme-Liste. Jedes Element stellt ein Element dar,
dass im Bunddiagramm gesetzt werden soll.
<< \context ChordNames { \chordmode { c1 d:m } } \context Staff { \clef "treble_8" < c e g c' e' > 1 ^\markup \fret-diagram-verbose #'( (mute 6) (place-fret 5 3) (place-fret 4 2) (open 3) (place-fret 2 1) (open 1) ) < d a d' f'> ^\markup \fret-diagram-verbose #'( (mute 6) (mute 5) (open 4) (place-fret 3 2) (place-fret 2 3) (place-fret 1 1) ) } >>
Fingersatz und Barre kann im ausführlichen Modus notiert werden. Nur im ausführlichen Modus kann ein Capo angezeigt werden, das auf dem Bunddiagramm plaziert wird. Die Capo-Anzeige ist ein dicker Strich, der alle Saiten bedeckt. Der Bund mit dem Capo ist der unterste Bund im Diagramm.
<< \context ChordNames { \chordmode { f1 g c } } \context Staff { \clef "treble_8" \override Voice.TextScript #'(fret-diagram-details finger-code) = #'below-string < f, c f a c' f'>1 ^\markup \fret-diagram-verbose #'( (place-fret 6 1) (place-fret 5 3) (place-fret 4 3) (place-fret 3 2) (place-fret 2 1) (place-fret 1 1) (barre 6 1 1) ) < g, b, d g b g'> ^\markup \fret-diagram-verbose #'( (place-fret 6 3 2) (place-fret 5 2 1) (open 4) (open 3) (open 2) (place-fret 1 3 3) ) < c e g c' e'> ^\markup \fret-diagram-verbose #'( (capo 3) (mute 6) (place-fret 4 5 1) (place-fret 3 5 2) (place-fret 2 5 3) ) } >>
Alle anderen Bunddiagramm-Eigenschaften müssen im ausführlichen
Modus mit mit \override
-Befehlen angegeben werden.
Die graphische Erscheinung eines Bunddiagramms kann den Wünschen
des Notensetzers angepassen werden. Hierzu werden die Eigenschaften
des fret-diagram-interface
(Bunddiagramm-Schnittstelle)
eingesetzt. Einzelheiten hierzu
in
fret-diagram-interface. Die Eigenschaften der
Schnittstelle gehören dem Voice.TextScript
-Kontext an.
Selected Snippets
Customizing markup fret diagrams
Fret diagram properties can be set through
'fret-diagram-details
. For markup fret diagrams, overrides can
be applied to the Voice.TextScript
object or directly to the
markup.
<< \chords { c1 | c | c | d } \new Voice = "mel" { \textLengthOn % Set global properties of fret diagram \override TextScript #'size = #'1.2 \override TextScript #'(fret-diagram-details finger-code) = #'in-dot \override TextScript #'(fret-diagram-details dot-color) = #'white %% C major for guitar, no barre, using defaults % terse style c'1^\markup { \fret-diagram-terse #"x;3-3;2-2;o;1-1;o;" } %% C major for guitar, barred on third fret % verbose style % size 1.0 % roman fret label, finger labels below string, straight barre c'1^\markup { % standard size \override #'(size . 1.0) { \override #'(fret-diagram-details . ( (number-type . roman-lower) (finger-code . in-dot) (barre-type . straight))) { \fret-diagram-verbose #'((mute 6) (place-fret 5 3 1) (place-fret 4 5 2) (place-fret 3 5 3) (place-fret 2 5 4) (place-fret 1 3 1) (barre 5 1 3)) } } } %% C major for guitar, barred on third fret % verbose style % landscape orientation, arabic numbers, M for mute string % no barre, fret label down or left, small mute label font c'1^\markup { \override #'(fret-diagram-details . ( (finger-code . below-string) (number-type . arabic) (label-dir . -1) (mute-string . "M") (orientation . landscape) (barre-type . none) (xo-font-magnification . 0.4) (xo-padding . 0.3))) { \fret-diagram-verbose #'((mute 6) (place-fret 5 3 1) (place-fret 4 5 2) (place-fret 3 5 3) (place-fret 2 5 4) (place-fret 1 3 1) (barre 5 1 3)) } } %% simple D chord % terse style % larger dots, centered dots, fewer frets % label below string d'1^\markup { \override #'(fret-diagram-details . ( (finger-code . below-string) (dot-radius . 0.35) (dot-position . 0.5) (fret-count . 3))) { \fret-diagram-terse #"x;x;o;2-1;3-2;2-3;" } } } >>
See also
Notationsreferenz: Text markup commands.
Schnipsel: Fretted strings.
Referenz der Interna: fret-diagram-interface.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Fret diagram markups ] | [ Nach oben : Common notation for fretted strings ] | [ Automatic fret diagrams > ] |
Predefined fret diagrams
Bunddiagramme können mit dem FretBoards
-Kontext angezeigt
werden. Standardmäßig zeigt der FretBoards
-Kontext
Bunddiagramme an, die in einer Tabelle definiert sind:
\include "predefined-guitar-fretboards.ly" \context FretBoards { \chordmode { c1 d } }
Die vordefinierten Diagramme sind in der Datei
predefined-guitar-fretboards.ly
enthalten. Sie werden
basierend auf der Tonhöhe eines Akkordes und dem Wert von
stringTunings
(Saitenstimmung), der gerade benutzt wird,
gespeichert. predefined-guitar-fretboards.ly
beinhaltet
vordefinierte Diagramme für die Gitarrenstimmtung (guitar-tuning
).
Anhand der Beispiele in dieser Datei können auch für andere
Instrumente oder Stimmungen Diagramme definiert werden.
Tonhöhen von Akkorden können entweder als Akkordkonstrukte oder im Akkordmodus notiert werden (siehe auch Chord mode overview).
\include "predefined-guitar-fretboards.ly" \context FretBoards { \chordmode {c1} <c' e' g'>1 }
Oft wird sowohl eine Akkordbezeichnung als ein Bunddiagramm
notiert. Das kann erreicht werden, indem ein
ChordNames
-Kontext parallel mit einem FretBoards
-Kontext
gesetzt wird und beiden Kontexten die gleichen Noten zugewiesen
werden.
\include "predefined-guitar-fretboards.ly" mychords = \chordmode{ c1 f g } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
Vordefinierte Bunddiagramme können transponiert werden, solange ein Diagramm für den transponierten Akkord in der Bunddiagramm-Tabelle vorhanden ist.
\include "predefined-guitar-fretboards.ly" mychords = \chordmode{ c1 f g } mychordlist = { \mychords \transpose c e { \mychords} } << \context ChordNames { \mychordlist } \context FretBoards { \mychordlist } >>
Die Tabelle der vordefinierten Bunddiagramme enthält sieben
Akkorde (Dur, Moll, übermäßig, vermindert, Dominantseptakkord,
große Septime und kleine Septime) für alle 17 Tonarten. Eine
vollständige Liste der vordefinierten Bunddiagramme findet sich
in Predefined fret diagrams. Wenn in der Tabelle für
einen Akkord kein Wert steht, wird ein Bunddiagramm vom
FretBoards
-Engraver errechnet, wobei die automatische
Bunddiagrammfunktion zu Anwendung kommt. Siehe hierzu
Automatic fret diagrams.
\include "predefined-guitar-fretboards.ly" mychords = \chordmode{ c1 c:9 } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
Bunddiagramme können zu der Tabelle hinzugefügt werden. Um ein
Diagramm hinzuzufügen, muss der Akkord des Diagramms, die Stimmung
und die Diagramm-Definition angegeben werden. Die Diagramm-Definition
kann entweder eine fret-diagram-terse
-Definition oder eine
fret-diagram-verbose
-Liste sein.
\include "predefined-guitar-fretboards.ly" \storePredefinedDiagram \chordmode {c:9} #guitar-tuning #"x;3-2;2-1;3-3;3-4;x;" mychords = \chordmode{ c1 c:9 } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
Unterschiedliche Bunddiagramme für den selben Akkord können gespeichert werden, indem unterschiedliche Oktaven für die Tonhöhe benutzt werden.
\include "predefined-guitar-fretboards.ly" \storePredefinedDiagram \chordmode {c'} #guitar-tuning #(offset-fret 2 (chord-shape 'bes guitar-tuning)) mychords = \chordmode{ c1 c' } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
Zusätzlich zu Bunddiagrammen speichert LilyPond auch eine interne
Liste an Akkordformen. Die Akkordformen sind Bunddiagramme,
die am Hals entlang verschoben werden können und dabei unterschiedliche
Akkorde ergeben. Akkordformen können zu der internen Liste
hinzugefügt werden und dann benutzt werden, um vordefinierte
Bunddiagramme zu definieren. Weil sie auf verschiedenen Positionen
auf dem Steg gelegt werden können, beinhalten vordefinierte
Akkord üblicherweise keine leeren Saiten. Wie Bunddiagramme können auch
Akkordformen entweder als fret-diagram-terse
-Definition
oder als fret-diagram-verbose
-Liste erstellt werden.
\include "predefined-guitar-fretboards.ly" % add a new chord shape \addChordShape #'powerf #guitar-tuning #"1-1;3-3;3-4;x;x;x;" % add some new chords based on the power chord shape \storePredefinedDiagram \chordmode {f'} #guitar-tuning #(chord-shape 'powerf guitar-tuning) \storePredefinedDiagram \chordmode {g'} #guitar-tuning #(offset-fret 2 (chord-shape 'powerf guitar-tuning)) mychords = \chordmode{ f1 f' g g' } << \context ChordNames { \mychords } \context FretBoards { \mychords } >>
Die graphische Form eines Bunddiagramms kann entsprechend den
eigenen Wünschen verändert werden, indem man die Eigenschaften
der fret-diagram-interface
-Schnittstellt verändert.
Einzelheiten hierzu in
fret-diagram-interface. Die
Schnittstelleneigenschaften eines vordefinierten Bunddiagrammes
gehören dem FretBoards.FretBoard
-Kontext an.
Selected Snippets
Customizing fretboard fret diagrams
Fret diagram properties can be set through
'fret-diagram-details
. For FretBoard fret diagrams, overrides
are applied to the FretBoards.FretBoard
object. Like
Voice
, FretBoards
is a bottom level context, therefore
can be omitted in property overrides.
\include "predefined-guitar-fretboards.ly" \storePredefinedDiagram \chordmode { c' } #guitar-tuning #"x;1-1-(;3-2;3-3;3-4;1-1-);" << \new ChordNames { \chordmode { c1 | c | c | d } } \new FretBoards { % Set global properties of fret diagram \override FretBoards.FretBoard #'size = #'1.2 \override FretBoard #'(fret-diagram-details finger-code) = #'in-dot \override FretBoard #'(fret-diagram-details dot-color) = #'white \chordmode { c \once \override FretBoard #'size = #'1.0 \once \override FretBoard #'(fret-diagram-details barre-type) = #'straight \once \override FretBoard #'(fret-diagram-details dot-color) = #'black \once \override FretBoard #'(fret-diagram-details finger-code) = #'below-string c' \once \override FretBoard #'(fret-diagram-details barre-type) = #'none \once \override FretBoard #'(fret-diagram-details number-type) = #'arabic \once \override FretBoard #'(fret-diagram-details orientation) = #'landscape \once \override FretBoard #'(fret-diagram-details mute-string) = #"M" \once \override FretBoard #'(fret-diagram-details label-dir) = #LEFT \once \override FretBoard #'(fret-diagram-details dot-color) = #'black c' \once \override FretBoard #'(fret-diagram-details finger-code) = #'below-string \once \override FretBoard #'(fret-diagram-details dot-radius) = #0.35 \once \override FretBoard #'(fret-diagram-details dot-position) = #0.5 \once \override FretBoard #'(fret-diagram-details fret-count) = #3 d } } \new Voice { c'1 | c' | c' | d' } >>
Defining predefined fretboards for other instruments
Predefined fret diagrams can be added for new instruments in addition to the standards used for guitar. This file shows how this is done by defining a new string-tuning and a few predefined fretboards for the Venezuelan cuatro.
This file also shows how fingerings can be included in the chords used
as reference points for the chord lookup, and displayed in the fret
diagram and the TabStaff
, but not the music.
These fretboards are not transposable because they contain string information. This is planned to be corrected in the future.
% add FretBoards for the Cuatro % Note: This section could be put into a separate file % predefined-cuatro-fretboards.ly % and \included into each of your compositions cuatroTuning = #'(11 18 14 9) dSix = { <a\4 b\1 d\3 fis\2> } dMajor = { <a\4 d\1 d\3 fis \2> } aMajSeven = { <a\4 cis\1 e\3 g\2> } dMajSeven = { <a\4 c\1 d\3 fis\2> } gMajor = { <b\4 b\1 d\3 g\2> } \storePredefinedDiagram \dSix #cuatroTuning #"o;o;o;o;" \storePredefinedDiagram \dMajor #cuatroTuning #"o;o;o;3-3;" \storePredefinedDiagram \aMajSeven #cuatroTuning #"o;2-2;1-1;2-3;" \storePredefinedDiagram \dMajSeven #cuatroTuning #"o;o;o;1-1;" \storePredefinedDiagram \gMajor #cuatroTuning #"2-2;o;1-1;o;" % end of potential include file /predefined-cuatro-fretboards.ly #(set-global-staff-size 16) primerosNames = \chordmode { d:6 d a:maj7 d:maj7 g } primeros = { \dSix \dMajor \aMajSeven \dMajSeven \gMajor } \score { << \new ChordNames { \set chordChanges = ##t \primerosNames } \new Staff { \new Voice \with { \remove "New_fingering_engraver" } \relative c'' { \primeros } } \new FretBoards { \set stringTunings = #cuatroTuning \override FretBoard #'(fret-diagram-details string-count) = #'4 \override FretBoard #'(fret-diagram-details finger-code) = #'in-dot \primeros } \new TabStaff \relative c'' { \set TabStaff.stringTunings = #cuatroTuning \primeros } >> \layout { \context { \Score \override SpacingSpanner #'base-shortest-duration = #(ly:make-moment 1 16) } } \midi { } }
See also
Notationsreferenz: Custom tablatures, Automatic fret diagrams, Chord mode overview, Predefined fret diagrams.
Installierte Dateien: ‘ly/predefined-guitar-fretboards.ly’, ‘ly/predefined-guitar-ninth-fretboards.ly’.
Schnipsel: Fretted strings.
Referenz der Interna: fret-diagram-interface.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Predefined fret diagrams ] | [ Nach oben : Common notation for fretted strings ] | [ Right-hand fingerings > ] |
Automatic fret diagrams
Bunddiagramme können automatisch aus notierten Noten erstellt werden.
Hierzu wird der FretBoards
-Kontext eingesetzt. Wenn keine
vordefinierten Diagramme für die ensprechenden Noten mit
der aktiven Saitenstimmung (stringTunings
) vorhanden sind,
errechnet der Kontext Saiten und Bünde die benutzt werden können,
um die Noten zu spielen.
<< \context ChordNames { \chordmode { f1 g } } \context FretBoards { < f, c f a c' f'>1 < g,\6 b, d g b g'> } \context Staff { \clef "treble_8" < f, c f a c' f'>1 < g, b, d g b' g'> } >>
Da in den Standardeinstellungen keine vordefinierten Diagramme geladen werden, ist die automatische Diagrammerstellung das Standardverhalten. Wenn die vordefinierten Diagramme eingesetzt werden, kann die automatische Berechnung an- und ausgeschaltet werden.
\storePredefinedDiagram <c e g c' e'> #guitar-tuning #"x;3-1-(;5-2;5-3;5-4;3-1-1);" << \context ChordNames { \chordmode { c1 c c } } \context FretBoards { <c e g c' e'>1 \predefinedFretboardsOff <c e g c' e'> \predefinedFretboardsOn <c e g c' e'> } \context Staff { \clef "treble_8" <c e g c' e'>1 <c e g c' e'> <c e g c' e'> } >>
Manchmal kann die Berechnungsfunktion für Bunddiagramme kein
passendes Diagramm finden. Das kann oft umgangen werden, indem
man manuell einer Note eine bestimmte Saite zuweist. In vielen
Fällen muss nur eine Note derart gekennzeichnet werden, der
Rest wird dann ensprechend durch den FretBoards
-Kontext
behandelt.
Fingersatz kann zu FretBoard-Bunddiagrammen hinzugefügt werden.
<< \context ChordNames { \chordmode { c1 d:m } } \context FretBoards { < c-3 e-2 g c'-1 e' > 1 < d a-2 d'-3 f'-1> } \context Staff { \clef "treble_8" < c e g c' e' > 1 < d a d' f'> } >>
Der kleinste Bund, der benutzt wird, um Saiten und Bünde im
FretBoard-Kontext zu errechnen, kann mit der
minimumFret
-Eigenschaft gesetzt werden.
<< \context ChordNames { \chordmode { d1:m d:m } } \context FretBoards { < d a d' f'> \set FretBoards.minimumFret = #5 < d a d' f'> } \context Staff { \clef "treble_8" < d a d' f'> < d a d' f'> } >>
Die Saiten und Bünde des FretBoards
-Kontextes hängen von
der stringTunings
-Eigesnchaft ab, die die gleiche Bedeitung
wie im TabStaff-Kontext hat. Siehe auch Custom tablatures
zu Information über die stringTunings
Eigenschaft.
Die graphische Erscheindung eines Bunddiagrammes kann den
Bedürfnissen angepasst werden, indem Eigenschaften der
fret-diagram-interface
-Schnittstelle verändert werden.
Einzelheiten finden sich in
fret-diagram-interface.
Die Schnittstelleneigenschaften eines FretBoards
-Diagramms
gehören dem FretBoards.FretBoard
-Kontext an.
Predefined commands
\predefinedFretboardsOff
,
\predefinedFretboardsOn
.
See also
Notationsreferenz: Custom tablatures.
Schnipsel: Fretted strings.
Referenz der Interna: fret-diagram-interface.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Automatic fret diagrams ] | [ Nach oben : Common notation for fretted strings ] | [ Guitar > ] |
Right-hand fingerings
Fingersatz für die rechte Hand in Akkorden kann mit den Bezeichnungen p-i-m-a notiert werden. Er muss innerhalb eines Akkord-Konstruktes notiert werden.
Achtung: Nach der Note muss ein Minuszeichen gesetzt
werden und ein Leerzeichen nach dem schließenden |
\clef "treble_8" <c-\rightHandFinger #1 >4 <e-\rightHandFinger #2 > <g-\rightHandFinger #3 > <c-\rightHandFinger #4 > <c,-\rightHandFinger #1 e-\rightHandFinger #2 g-\rightHandFinger #3 c-\rightHandFinger #4 >1
Zur Erleichterung kann der Befehl \rightHandFinger
zu ein paar
Buchstaben abgekürzt werden, etwa RH
.
#(define RH rightHandFinger)
Selected Snippets
Placement of right-hand fingerings
It is possible to exercise greater control over the placement of right-hand fingerings by setting a specific property, as demonstrated in the following example.
#(define RH rightHandFinger) \relative c { \clef "treble_8" \set strokeFingerOrientations = #'(up down) <c-\RH #1 e-\RH #2 g-\RH #3 c-\RH #4 >4 \set strokeFingerOrientations = #'(up right down) <c-\RH #1 e-\RH #2 g-\RH #3 c-\RH #4 >4 \set strokeFingerOrientations = #'(left) <c-\RH #1 e-\RH #2 g-\RH #3 c-\RH #4 >2 }
Fingerings, string indications, and right-hand fingerings
This example combines left-hand fingering, string indications, and right-hand fingering.
#(define RH rightHandFinger) \relative c { \clef "treble_8" <c-3\5-\RH #1 >4 <e-2\4-\RH #2 >4 <g-0\3-\RH #3 >4 <c-1\2-\RH #4 >4 }
See also
Schnipsel: Fretted strings.
Referenz der Interna: StrokeFinger.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Right-hand fingerings ] | [ Nach oben : Fretted string instruments ] | [ Indicating position and barring > ] |
2.4.2 Guitar
Die meisten der Besonderheiten von Gitarrennotation wurden im allgemeinen Abschnitt behandelt, aber es gibt noch einige, die hier gezeigt werden sollen. Teilweise soll ein Lead-sheet nur die Akkordsymbole und den Gesangstext enthalten. Da LilyPond ein Notensatzprogramm ist, wird es nicht für derartige Projekte empfohlen, die keine eigentliche Notation beinahlten. Anstattdessen sollte ein Textbearbeitungsprogramm, oder ein Satzprogramm wie GuitarTeX (für erfahrende Benutzer) eingesetzt werden.
Indicating position and barring | ||
Indicating harmonics and dampened notes |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Guitar ] | [ Nach oben : Guitar ] | [ Indicating harmonics and dampened notes > ] |
Indicating position and barring
Das Beispiel zeigt, wie man Griff- und Barreposition notieren kann.
\clef "treble_8" b16 d g b e \textSpannerDown \override TextSpanner #'(bound-details left text) = #"XII " g16\startTextSpan b16 e g e b g\stopTextSpan e16 b g d
See also
Notationsreferenz: Text spanners.
Schnipsel: Fretted strings, Expressive marks.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Indicating position and barring ] | [ Nach oben : Guitar ] | [ Banjo > ] |
Indicating harmonics and dampened notes
Besondere Notenköpfe können eingesetzt werden, um gedämpfte Noten oder Flageoletttöne anzuzeigen. Flageoletttöne werden normalerweise mit einem Text erklärt.
\relative c' { \clef "treble_8" \override Staff.NoteHead #'style = #'cross g8 a b c b4 \override Staff.NoteHead #'style = #'harmonic-mixed d^\markup { \italic { \fontsize #-2 { "harm. 12" }}} <g b>1 }
See also
Notationsreferenz: Special note heads, Note head styles.
Schnipsel: Fretted strings.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Indicating harmonics and dampened notes ] | [ Nach oben : Fretted string instruments ] | [ Banjo tablatures > ] |
2.4.3 Banjo
Banjo tablatures |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Banjo ] | [ Nach oben : Banjo ] | [ Percussion > ] |
Banjo tablatures
LilyPond hat grundlegende Unterstützung für fünfsaitige Banjo. Die Banjo-Tabulatur-Funktion sollte zum Notieren von Banjo-Tabulaturen verwendet werden, damit die richtigen Bund-Nummern für die fünfte Saite gesetzt werden:
\new TabStaff << \set TabStaff.tablatureFormat = #fret-number-tablature-format-banjo \set TabStaff.stringTunings = #banjo-open-g-tuning { \stemDown g8 d' g'\5 a b g e d' | g4 d''8\5 b' a'\2 g'\5 e'\2 d' | g4 } >>
Eine Anzahl von üblichen Stimmungen für Banjo sind in LilyPond
vordefiniert:
banjo-c-tuning
(gCGBD), banjo-modal-tuning
(gDGCD),
banjo-open-d-tuning
(aDF#AD) und banjo-open-dm-tuning
(aDFAD).
Diese Stimmungen können für das viersaitige Banjo angepasst werden,
indem die four-string-banjo
-Funktion eingesetzt wird:
\set TabStaff.stringTunings = #(four-string-banjo banjo-c-tuning)
See also
Schnipsel: Fretted strings.
Die Datei ‘scm/output-lib.scm’ beinhaltet vordefinierte Stimmungen für Banjo.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Banjo tablatures ] | [ Nach oben : Specialist notation ] | [ Common notation for percussion > ] |
2.5 Percussion
2.5.1 Common notation for percussion |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Percussion ] | [ Nach oben : Percussion ] | [ References for percussion > ] |
2.5.1 Common notation for percussion
Rhythmusnotation wird vor allem für Schlaginstrumente eingesetzt, aber hiermit kann auch der Rhythmus einer Melodie dargestellt werden.
References for percussion | ||
Basic percussion notation | ||
Drum rolls | ||
Pitched percussion | ||
Percussion staves | ||
Custom percussion staves | ||
Ghost notes |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Common notation for percussion ] | [ Nach oben : Common notation for percussion ] | [ Basic percussion notation > ] |
References for percussion
- Viele Schlagzeugmusik kann auf einem rhythmischen System notiert werden. Das wird gezeigt in Showing melody rhythms und Instantiating new staves.
- MIDI-Ausgabe wird behandelt in Percussion in MIDI.
See also
Notationsreferenz: Showing melody rhythms, Instantiating new staves. Percussion in MIDI.
Schnipsel: Percussion.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < References for percussion ] | [ Nach oben : Common notation for percussion ] | [ Drum rolls > ] |
Basic percussion notation
Schlagzeug-Noten können im \drummode
-Modus notiert werden,
der sich ähnlich verhält wie der Standardmodus für die Noteneingabe.
Am einfachsten kann der \drums
-Befehl benutzt werden, der sich
um den richtigen Kontext und Eingabemodus kümmert:
\drums { hihat4 hh bassdrum bd }
Das ist die Kurzschreibweise für:
\new DrumStaff { \drummode { hihat4 hh bassdrum bd } }
Jedes Schlagzeuginstrument hat einen langen Namen und eine Abkürzung, und beide können nebeneinander benutzt werden. Eine Liste der Notenbezeichnungen für Schlagzeug findet sich in Percussion notes.
Beachten Sie, dass normale Tonhöhen (wie cis4
) in einem
DrumStaff
-Kontext eine Fehlernachricht erzielen. Schlüssel für
Schlagzeug werden automatisch hinzugefügt, aber andere Schlüssel können
auch benutzt werden.
Es gibt einige Probleme mit der MIDI-Unterstützung für Schlagzeuginstrumente. Details finden sich in Percussion in MIDI.
See also
Notationsreferenz: Percussion in MIDI, Percussion notes.
Installierte Dateien: ‘ly/drumpitch-init.ly’.
Schnipsel: Percussion.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Basic percussion notation ] | [ Nach oben : Common notation for percussion ] | [ Pitched percussion > ] |
Drum rolls
Trommelwirbel werden mit drei Balken durch den Notenhals notiert. Für Viertelnoten oder längere Noten werden die drei Balken explizit notiert, Achtel werden mit zwei Balken gezeigt (und der dritte ist der eigentliche Balken), und Trommelwirbel mit kürzeren Werten als Achtelnoten haben einen Balken zusätzlich zu den eigentlichen Balken der Noten. Dieses Verhalten wird mit der Tremolonotation erreicht, wie in Tremolo repeats gezeigt. Hier ein Beispiel kleinerer Wirbel:
\drums { \time 2/4 sn16 sn8 sn16 sn8 sn8:32 ~ sn8 sn8 sn4:32 ~ sn4 sn8 sn16 sn16 sn4 r4 }
Benutzung der Stöcke kann angezeigt werden durch ^"R"
oder
^"L"
nach jeder Note. Die staff-padding
-Eigenschaft
kann verändert werden, um eine Orientierung an einer gemeinsamen
Linie zu ermöglichen.
\drums { \repeat unfold 2 { sn16 ^"L" sn^"R" sn^"L" sn^"L" sn^"R" sn^"L" sn^"R" sn^"R" } }
See also
Schnipsel: Percussion.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Drum rolls ] | [ Nach oben : Common notation for percussion ] | [ Percussion staves > ] |
Pitched percussion
Bestimmte Schlagzeuginstrumente mit Tonhöhe (z. B. Xylophone, vibraphone und Pauken) werden auf normalen Systemen geschrieben. Das wird in anderen Abschnitten des Handbuchs behandelt.
See also
Notationsreferenz: Percussion in MIDI.
Schnipsel: Percussion.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Pitched percussion ] | [ Nach oben : Common notation for percussion ] | [ Custom percussion staves > ] |
Percussion staves
Ein Schlagzeug-System besteht üblicherweise aus einem Notensystem
mit mehreren Linien, wobei jede Linie ein bestimmtes Schlagzeug-Instrument
darstellt. Um die Noten darstellen zu können, müssen sie sich innerhalb von
einem DrumStaff
- und einem
DrumVoice
-Kontext befinden.
up = \drummode { crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat } down = \drummode { bassdrum4 snare8 bd r bd sn4 } \new DrumStaff << \new DrumVoice { \voiceOne \up } \new DrumVoice { \voiceTwo \down } >>
Das Beispiel zeigt ausdrücklich definierte mehrstimmige Notation. Die Kurznotation für mehrstimmige Musik, wie sie im Abschnitt I’m hearing Voices beschrieben wird, kann auch verwendet werden, wenn die Stimmen am Anfang explizit initialisiert werden.
\new DrumStaff << \new DrumVoice = "1" { s1*2 } \new DrumVoice = "2" { s1*2 } \drummode { bd4 sn4 bd4 sn4 << { \repeat unfold 16 hh16 } \\ { bd4 sn4 bd4 sn4 } >> } >>
Es gibt auch weitere Layout-Einstellungen. Um diese zu verwenden,
muss die Eigenschaft drumStyleTable
im
DrumVoice
-Kontext entsprechend eingestellt werden.
Folgende Variablen sind vordefiniert:
-
drums-style
Das ist die Standardeinstellung. Hiermit wird ein typisches Schlagzeug-System auf fünf Notenlinien erstellt.
Die Schlagzeugdefinitionen unterstützen sechs unterschiedliche Tom Toms. Falls eine geringere Anzahl verwendet wird, kann man einfach die Tom Toms auswählen, deren Notation man haben will. Tom Toms auf den drei mittleren Linien werden mit den Bezeichnungen
tommh
,tomml
undtomfh
notiert.-
timbales-style
Hiermit werden Timbale auf zwei Notenlinien gesetzt.
-
congas-style
Hiermit werden Congas auf zwei Linien gesetzt.
-
bongos-style
Hiermit werden Bongos auf zwei Linien gesetzt.
-
percussion-style
Dieser Stil ist für alle einfachen Perkussionsinstrumente auf einer Notenlinie.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Percussion staves ] | [ Nach oben : Common notation for percussion ] | [ Ghost notes > ] |
Custom percussion staves
Wenn ihnen keine der vordefinierten Stile gefällt, können Sie auch eine eigene Liste der Positionen und Notenköpfe am Anfang ihrer Datei erstellen.
#(define mydrums '( (bassdrum default #f -1) (snare default #f 0) (hihat cross #f 1) (pedalhihat xcircle "stopped" 2) (lowtom diamond #f 3))) up = \drummode { hh8 hh hh hh hhp4 hhp } down = \drummode { bd4 sn bd toml8 toml } \new DrumStaff << \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \new DrumVoice { \voiceOne \up } \new DrumVoice { \voiceTwo \down } >>
Selected Snippets
Hier einige Beispiele:
Zwei Holzblöcke, notiert mit wbh (hoch) und wbl (tief)
% These lines define the position of the woodblocks in the stave; % if you like, you can change it or you can use special note heads % for the woodblocks. #(define mydrums '((hiwoodblock default #t 3) (lowoodblock default #t -2))) woodstaff = { % This defines a staff with only two lines. % It also defines the positions of the two lines. \override Staff.StaffSymbol #'line-positions = #'(-2 3) % This is neccessary; if not entered, the barline would be too short! \override Staff.BarLine #'bar-size = #3 } \new DrumStaff { \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) % with this you load your new drum style table \woodstaff \drummode { \time 2/4 wbl8 wbl16 wbl wbh8-> wbl | wbl8 wbl16 wbh-> ~ wbh wbl16 r8 | } }
In diesem Spezialfalls muss die Länge der Taktlinie mit
\override Staff.BarLine #'bar-size #number
angepasst werden.
Andernfalls wäre sie zu kurz. Die Position der beiden Linien muss
auch definiert werden.
Tamburin, notiert mit tamb
:
#(define mydrums '((tambourine default #t 0))) tambustaff = { \override Staff.StaffSymbol #'line-positions = #'( 0 ) \override Staff.BarLine #'bar-size = #3 \set DrumStaff.instrumentName = #"Tambourine" } \new DrumStaff { \tambustaff \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \drummode { \time 6/8 tamb8. tamb16 tamb8 tamb tamb tamb | tamb4. tamb8 tamb tamb | % the trick with the scaled duration and the shorter rest % is neccessary for the correct ending of the trill-span! tamb2.*5/6 \startTrillSpan s8 \stopTrillSpan | } }
Noten für Tam-Tam (notiert mit tt
):
#(define mydrums '((tamtam default #t 0))) tamtamstaff = { \override Staff.StaffSymbol #'line-positions = #'( 0 ) \override Staff.BarLine #'bar-size = #3 \set DrumStaff.instrumentName = #"Tamtam" } \new DrumStaff { \tamtamstaff \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \drummode { tt 1 \pp \laissezVibrer } }
Zwei Glocken, notiert mit cb
(Kuhglocke) und rb
(Reisterglocke)
#(define mydrums '((ridebell default #t 3) (cowbell default #t -2))) bellstaff = { \override DrumStaff.StaffSymbol #'line-positions = #'(-2 3) \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \override Staff.BarLine #'bar-size = #3 \set DrumStaff.instrumentName = #"Different Bells" } \new DrumStaff { \bellstaff \drummode { \time 2/4 rb8 rb cb cb16 rb-> ~ | rb16 rb8 rb16 cb8 cb | } }
Here an short example by maestro Stravinsky (from ‚L’histoire du Soldat‘)
#(define mydrums '((bassdrum default #t 4) (snare default #t -4) (tambourine default #t 0))) global = { \time 3/8 s4. \time 2/4 s2*2 \time 3/8 s4. \time 2/4 s2 } drumsA = { \context DrumVoice << { \global } { \drummode { \autoBeamOff \stemDown sn8 \stemUp tamb s8 | sn4 \stemDown sn4 | \stemUp tamb8 \stemDown sn8 \stemUp sn16 \stemDown sn \stemUp sn8 | \stemDown sn8 \stemUp tamb s8 | \stemUp sn4 s8 \stemUp tamb } } >> } drumsB = { \drummode { s4 bd8 s2*2 s4 bd8 s4 bd8 s8 } } \layout { indent = #40 } \score { \new StaffGroup << \new DrumStaff { \set DrumStaff.instrumentName = \markup { \column { "Tambourine" "et" "caisse claire s. timbre" } } \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \drumsA } \new DrumStaff { \set DrumStaff.instrumentName = #"Grosse Caisse" \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \drumsB } >> }
See also
Schnipsel: Percussion.
Referenz der Interna: DrumStaff, DrumVoice.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Custom percussion staves ] | [ Nach oben : Common notation for percussion ] | [ Wind instruments > ] |
Ghost notes
Geisternoten für Schlagzeug und Perkussion können mit dem
Klammer- (\parenthesize
)-Befehl, beschrieben in Parentheses,
erstellt werden. Im Standard-\drummode
-Modus ist aber
das Parenthesis_engraver
-Plugin nicht automatisch enthalten.
\new DrumStaff \with { \consists "Parenthesis_engraver" } << \context DrumVoice = "1" { s1 } \context DrumVoice = "2" { s1 } \drummode { << { hh8[ hh] <hh sn> hh16 < \parenthesize sn > hh < \parenthesize sn > hh8 <hh sn> hh } \\ { bd4 r4 bd8 bd r8 bd } >> } >>
Um jede Klammer-Definition (\parenthesize
) müssen
zusätzlich die spitzen
Klammern für Akkorde (< >
) gesetzt werden.
See also
Schnipsel: Percussion.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ghost notes ] | [ Nach oben : Specialist notation ] | [ Common notation for wind instruments > ] |
2.6 Wind instruments
Dieser Abschnitt beinhaltet einige Notationselemente, die bei der Notation von Blasinstrumenten auftreten.
2.6.1 Common notation for wind instruments | ||
2.6.2 Bagpipes |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Wind instruments ] | [ Nach oben : Wind instruments ] | [ References for wind instruments > ] |
2.6.1 Common notation for wind instruments
Dieser Abschnitt erklärt Eigenheiten, die für die meisten Blasinstrumente gültig sind.
References for wind instruments | ||
Fingerings |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Common notation for wind instruments ] | [ Nach oben : Common notation for wind instruments ] | [ Fingerings > ] |
References for wind instruments
Viele Besonderheiten der Blasinstrumentenotation haben mit Atmung und Spielart zu tun:
- Atmung kann durch Pausen oder mit Atemzeichen angezeigt werden,, siehe Breath marks.
- Legato kann durch Legatobögen angezeigt werden, siehe Slurs.
- Unterschiedliche Artikulationen, Legato, Portato, Staccato, werden normalerweise mit Artikulationszeichen angemerkt, teilweise auch in Verbindung mit Legatobögen, siehe Articulations and ornamentations und List of articulations.
- Flatterzunge wird angezeigt, indem ein Tremolozeichen und eine Anmerkung für die ensprechende Note gesetzt wird. Siehe Tremolo repeats.
Es gibt auch noch weitere Aspekte der Notation, die für Blasinstrumente relevant sein können:
- Viele Instrumente sind transponierend, siehe Instrument transpositions.
- Das Zug-Glissando ist charakteristisch für die Posaune, aber auch andere Instrumente können Glissandos ausführen. Siehe Glissando.
- Obertonreihenglissandi, die auf allen Blechblasinstrumenten möglich, aber besonders üblich für das Waldhorn sind, werden üblicherweise mit Verzierungsnoten geschrieben. Siehe Grace notes.
- Tonhöhenschwankungen am Ende eines Tons werden gezeigt in Falls and doits.
- Ventil- oder Klappenschläge werden oft als Kreuznoten dargestellt, siehe Special note heads.
- Holzbläser können tiefe Noten überblasen. Derartige Noten
werden als
flageolet
-Artikulation notiert. Siehe List of articulations. - Die Benutzung von Dämpfern für Blechblasinstrumente wird meistens
durch Text gefordert, aber bei schnellem Wechsel bietet es sich an,
die Artikulationszeichen
stopped
undopen
zu benutzen. Siehe Articulations and ornamentations und List of articulations. - Gestopfte Hörner werden mit dem
stopped
-Artikulationszeichen notiert. Siehe Articulations and ornamentations.
Selected Snippets
Changing \flageolet mark size
To make the \flageolet
circle smaller use the following Scheme
function.
smallFlageolet = #(let ((m (make-music 'ArticulationEvent 'articulation-type "flageolet"))) (ly:music-set-property! m 'tweaks (acons 'font-size -3 (ly:music-property m 'tweaks))) m) \layout { ragged-right = ##f } \relative c'' { d4^\flageolet_\markup { default size } d_\flageolet c4^\smallFlageolet_\markup { smaller } c_\smallFlageolet }
See also
Notationsreferenz: Breath marks, Slurs, Articulations and ornamentations, List of articulations, Tremolo repeats, Instrument transpositions, Glissando, Grace notes, Falls and doits, Special note heads,
Schnipsel: Winds
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < References for wind instruments ] | [ Nach oben : Common notation for wind instruments ] | [ Bagpipes > ] |
Fingerings
Alle Blasinstrumente außer der Posaune benötigen mehrere Finger, um verschiedene Tonhöhen zu produzieren.
TBC
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Fingerings ] | [ Nach oben : Wind instruments ] | [ Bagpipe definitions > ] |
2.6.2 Bagpipes
Dieser Abschnitt beinhaltet Information zur Notation von Dudelsackmusik.
Bagpipe definitions | ||
Bagpipe example |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Bagpipes ] | [ Nach oben : Bagpipes ] | [ Bagpipe example > ] |
Bagpipe definitions
LilyPond besitzt spezielle Definitionen, mit der die Musik des schottischen Hochland-Dudelsacks notiert wird. Um sie zu benutzen, muss
\include "bagpipe.ly"
am Anfang der LilyPond-Quelldatei eingefügt werden. Hierdurch
können dann bestimmte Verzierungsnoten, die für die Dudelsackmusik
üblich sind, mit kurzen Befehlen eingefügt werden. So reicht etwa der
Befehl \taor
, anstatt
\grace { \small G32[ d G e] }
zu schreiben.
bagpipe.ly
enthält außerdem Definitionen für Tonhöhen von
Dudelsacknoten in bestimmten Oktaven, so dass man sich nicht mehr um
\relative
oder \transpose
kümmern muss.
\include "bagpipe.ly" { \grg G4 \grg a \grg b \grg c \grg d \grg e \grg f \grA g A }
Musik für den Dudelsack wird in D-Dur
geschrieben (auch wenn das eigentlich nicht stimmt). Weil
das aber die einzige Tonart ist, die benutzt werden kann, werden
die Vorzeichen meistens nicht geschrieben. Damit das funktioniert,
müssen die Noten immer mit \hideKeySignature
beginnen.
Wenn die Vorzeichen hingegen angezeigt werden sollen, kann das
mithilfe des Befehls \showKeySignature
vorgenommen werden.
Einige moderne Dudelsacknoten benutzen halbe Finger auf c und f, um
diese Noten zu erniedrigen. Das kann angezeigt werden mit cflat
bzw. fflat
. Gleicherweise kann das piobaireachd hohe g als
gflat
geschrieben werden, wenn es in leichter Musik vorkommt.
See also
Schnipsel: Winds
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Bagpipe definitions ] | [ Nach oben : Bagpipes ] | [ Chord notation > ] |
Bagpipe example
So sieht die bekannte Melodie Amazing Grace aus, wenn man sie für Dudelsack notiert.
\include "bagpipe.ly" \layout { indent = 0.0\cm \context { \Score \remove "Bar_number_engraver" } } \header { title = "Amazing Grace" meter = "Hymn" arranger = "Trad. arr." } { \hideKeySignature \time 3/4 \grg \partial 4 a8. d16 \slurd d2 \grg f8[ e32 d16.] \grg f2 \grg f8 e \thrwd d2 \grg b4 \grG a2 \grg a8. d16 \slurd d2 \grg f8[ e32 d16.] \grg f2 \grg e8. f16 \dblA A2 \grg A4 \grg A2 f8. A16 \grg A2 \hdblf f8[ e32 d16.] \grg f2 \grg f8 e \thrwd d2 \grg b4 \grG a2 \grg a8. d16 \slurd d2 \grg f8[ e32 d16.] \grg f2 e4 \thrwd d2. \slurd d2 \bar "|." }
See also
Schnipsel: Winds
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Bagpipe example ] | [ Nach oben : Specialist notation ] | [ Chord mode > ] |
2.7 Chord notation
Akkorde können entweder als normale Noten oder im Akkordmodus notiert werden; bei letztere Eingabemethode können unterschiedliche europäische Akkordbezeichnungsstile eingesetzt werden. Akkordbzeichnungen und Generalbass können auch angezeigt werden.
2.7.1 Chord mode | ||
2.7.2 Displaying chords | ||
2.7.3 Figured bass |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Chord notation ] | [ Nach oben : Chord notation ] | [ Chord mode overview > ] |
2.7.1 Chord mode
Im Akkordmodus (engl. „chord“) werden Akkorde anhand von einem Symbol der erwünschten Akkordstruktur notiert, anstatt dass die einzelnen Tonhöhen ausgeschrieben werden.
Chord mode overview | ||
Common chords | ||
Extended and altered chords |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Chord mode ] | [ Nach oben : Chord mode ] | [ Common chords > ] |
Chord mode overview
Akkorde können als simultane Noten eingegeben werden, wie gezeigt in Chorded notes.
Akkorde können aber auch im Akkordmodus notiert werden. Das ist ein Eingabemodus, der sich an Akkordstrukturen traditioneller europäischer Musik und nicht an bestimmten einzelnen Tonhöhen orientiert. Er bietet sich an, wenn man es gewohnt ist, Akkordsymbole zur Beschreibung von Akkorden zu benutzen. Mehr Information zu unterschiedlichen Eingabemethoden findet sich in Input modes.
\chordmode { c1 g a g c }
Akkorde, die im Akkordmodus eingegeben werden, sind musikalische Elemente und können genauso wie Akkorde im Notenmodus transponiert werden.
Akkordmodus und Notenmodus können gemischt verwendet werden:
<c e g>2 <g b d> \chordmode { c2 f } <c e g>2 <g' b d> \chordmode { f2 g }
See also
Glossar: chord.
Notationsreferenz: Chorded notes, Input modes.
Schnipsel: Chords
Known issues and warnings
Wenn Akkord- und Notenmodus in linearer Musik abwechseln eingesetzt werden und der Akkordmodus am Anfang steht, erstellt der Notenmodus ein neues Notensyste:
\chordmode { c2 f } <c e g>2 <g' b d>
Um dieses Verhalten zu verhindert, muss der Staff
-Kontext
explizit aufgerufen werden:
\new Staff { \chordmode { c2 f } <c e g>2 <g' b d> }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Chord mode overview ] | [ Nach oben : Chord mode ] | [ Extended and altered chords > ] |
Common chords
Ein Dreiklang wird mit seinem Grundton mit einer möglichen Dauer dahinter notiert:
\chordmode { c2 f4 g }
Moll- übermäßige und verminderte Dreiklänge werden notiert, indem
:
und ein Modifikator hinter der Dauer angegeben wird:
\chordmode { c2:m f4:aug g:dim }
Septakkorde können erstellt werden:
\chordmode { c1:7 c:m7 c:maj7 c:dim7 c:aug7 }
Diese Tabelle zeigt die Funktion der Modifikatoren von Dreiklängen und Septakkorden. Die siebte Stufe wird standardmäßig als kleine Septime realisiert, sodass der Dominantseptakkord die Grundform des Septakkordes darstellt. Alle Alterationen sind relativ zur Dominantsept. Eine vollständigere Tabelle findet sich in Common chord modifiers.
Modifikator | Funktion | Beispiel |
Kein | Standard: erzeugt einen Durdreiklang. | |
m, m7 | Mollakkord: Dieser Modifikator erniedrigt die dritte Stufe. | |
dim, dim7 | Verminderter Akkord: Dieser Modifikator erniedrigt die dritte, fünfte und (wenn vorhanden) die siebte Stufe. | |
aug | Übermäßiger Akkord: Dieser Modifikator erhöht die fünfte Stufe. | |
maj, maj7 | Großer Septakkord: Dieser Modifikator fügt eine erhöhte siebe
Stufe hinzu. |
See also
Notationsreferenz: Common chord modifiers, Extended and altered chords.
Schnipsel: Chords.
Known issues and warnings
Nur ein Qualitätsmodifikator sollte pro Akkord benutzt werden, meistens für die höchste Stufe des Akkordes. Akkorde mit weiteren Qualitätsmodifikatoren werden ohne Warnung oder Fehlermeldung gelesen, aber das Ergebnis ist nicht vorhersagbar. Akkorde, die nicht mit einem einzigen Qualitätsmodifikator erreicht werden können, sollten mit einzelnen Tonhöhen alteriert werden, wie beschrieben in Extended and altered chords.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Common chords ] | [ Nach oben : Chord mode ] | [ Displaying chords > ] |
Extended and altered chords
Akkordstrukturen können im Akkordmodus beliebig komplex konstruiert werden. Die Modifikatoren können benutzt werden, um den Akkord zu erweitern, bestimmte Stufen hinzuzufügen oder zu entfernen, Stufen zu erhöhen oder zu erniedrigen und Bassnoten hinzuzufügen bzw. Umgkehrungen zu erzeugen.
Die erste Zahl, die auf den Doppelpunkt folgt, wird als „Bereich“ des Akkordes interpretiert: Terzen werden auf dem Grundton gestapelt, bis die angegebene Zahl (=Tonstufe) erreicht ist. Die siebte Stufe, die zu einem Akkord hinzugefügt wird, ist die kleine Septime, nicht die große. Wenn der Bereich keine Terz ist (also etwa 6), dann werden Terzen bis zur höchst möglichen Terz unter dem Bereich gestapelt, und der Endton des Bereichs wird hinzugefügt. Der größtmögliche Wert ist 13. Jeder größere Werte wird als 13 interpretiert.
\chordmode { c1:2 c:3 c:4 c:5 c1:6 c:7 c:8 c:9 c1:10 c:11 c:12 c:13 c1:14 }
Sowhohl c:5
als auch c
erzeugen einen D-Dur-Dreiklang.
Da eine unveränderte 11 nicht gut klingt, wenn sie mit einer
unveränderten 13 zusammenklingt, wird die 11 von einem :13
-Akkord
entfernt (es sei denn sie wird explizit verlangt).
\chordmode { c1:13 c:13.11 c:m13 }
Kompliziertere Akkorde können auch konstruiert werden, indem einzelne Intervalle zu dem Grundton addiert werden. Diese Additionen werden nach dem Bereich notiert und mit Punkten voneinander getrennt. Die normale Septime, die zu einem Akkord hinzugefügt wird, ist die kleine Septime, nicht die große.
\chordmode { c1:5.6 c:3.7.8 c:3.6.13 }
Hinzugefügte Stufen können beliebig groß sein:
\chordmode { c4:5.15 c:5.20 c:5.25 c:5.30 }
Einzelne Stufen können mit -
oder +
vergrößert
oder verkleinert werden. Um eine Stufe zu verändert, die automatisch
in den Akkord aufgenommen wurde, kann sie in veränderter Form
nach dem Bereich hinzugefügt werden.
\chordmode { c1:7+ c:5+.3- c:3-.5-.7- }
Zu entfernende Töne werden mit der gleichen Methode notiert,
allerdings mit einem Dach (^
) vor der Sequenz, die
nicht erscheinen soll. Sie müssen nach den zu addierenden
Tönen notiert werden. Die einzelnen zu entfernenden Töne werden
mit Punkten getrennt.
\chordmode { c1^3 c:7^5 c:9^3 c:9^3.5 c:13.11^3.7 }
Sekund- und Quartakkorde können mit dem Modifikator sus
notiert werden. Hiermit wird die dritte Stufe aus dem Akkord
entfernt. Mit einer anschließenden 2
wird die zweite, mit
einer 4
die vierte Stufe hinzugefügt. sus
entspricht
^3
und sus4
ist gleich .4^3
.
\chordmode { c1:sus c:sus2 c:sus4 c:5.4^3 }
Eine Umkehrung (ein Ton des Akkordes wird unter den Grundton gesetzt)
sowie auch zusätzliche Bassnoten können mit dem Schrägstrich (/
) markiert
werden:
\chordmode { c1 c/g c/f }
Eine Bassnote, die zum Akkord hinzugehört, kann hinzugefügt werden, anstatt dass sie aus dem Akkord entnommen wird, indem noch ein Plus zwischen den Schrägstrich und die Tonhöhe gesetzt wird:
\chordmode { c1 c/g c/+g }
Akkordmodifikatoren, die benutzt werden können, um eine große Anzahl an Standardakkorden zu erzeugen, werden gezeigt in Common chord modifiers.
See also
Notationsreferenz: Common chord modifiers.
Schnipsel: Chords
Known issues and warnings
Jede Stufe kann nur einmal in einem Akkord vorkommen.
Im folgenden Beispiel wird ein erweiterter Akkord erstellt,
weil 5+
zuletzt gelesen wird.
\chordmode { c:5.5-.5+ }
Nur die zweite Umkehrung kann erstellt werden, indem eine Bassnote hinzugefügt wird. Die erste Umkehrung erfordert, dass der Grundton des Akkordes geändert wird.
\chordmode { c'1: c':/g e:6-3-^5 e:m6-^5 }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Extended and altered chords ] | [ Nach oben : Chord notation ] | [ Printing chord names > ] |
2.7.2 Displaying chords
Akkorde können zusätzlich zur üblichen Notation als Töne auf einem Notensystem auch mit einem Akkordsymbol gesetzt werden.
Printing chord names | ||
Customizing chord names |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Displaying chords ] | [ Nach oben : Displaying chords ] | [ Customizing chord names > ] |
Printing chord names
Akkordsymbole anstelle der Noten werde im ChordNames
-Kontext
notiert.
\new ChordNames { \chordmode { c2 f4. g8 } }
Die Akkorde können entweder als simultane Noten oder unter Einsatz
des Akkordmodus (chordmode
) notiert werden. Der angezeigte
Akkord ist der gleiche, es sei denn, Umgkehrungen oder zusätzliche
Basstöne werden notiert:
<< \new ChordNames { <c e g>2 <f bes c> <f c' e g>1 \chordmode { c2 f:sus4 c1:/f } } { <c e g>2 <f bes c> <f, c' e g>1 \chordmode { c2 f:sus4 c1:/f } } >>
\chords { ... }
ist eine Kurznotation für die Bezeichnung
\new ChordNames { \chordmode { ... } }
.
\chords { c2 f4.:m g8:maj7 }
\new ChordNames { \chordmode { c2 f4.:m g8:maj7 } }
Selected Snippets
Showing chords at changes
Chord names can be displayed only at the start of lines and when the chord changes.
harmonies = \chordmode { c1:m c:m \break c:m c:m d } << \new ChordNames { \set chordChanges = ##t \harmonies } \new Staff { \relative c' { \harmonies } } >>
Simple lead sheet
When put together, chord names, a melody, and lyrics form a lead sheet:
<< \chords { c2 g:sus4 f e } \relative c'' { a4 e c8 e r4 b2 c4( d) } \addlyrics { One day this shall be free __ } >>
See also
Glossar: chord.
Notationsreferenz: Writing music in parallel.
Schnipsel: Chords.
Referenz der Interna: ChordNames, ChordName, Chord_name_engraver, Volta_engraver, Bar_engraver.
Known issues and warnings
Akkorde, die Umkehrungen oder zusätzliche Basstöne beinhalten, werden nicht richtig bezeichnet, wenn sie im Notenmodus notiert werden.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Printing chord names ] | [ Nach oben : Displaying chords ] | [ Figured bass > ] |
Customizing chord names
Es gibt kein allein gültiges System zur Benennung von Akkorden. Unterschiedliche Musiktraditionen benutzen unterschiedliche Bezeichnungen für die gleichen Akkorde. Es gibt zusätzlich auch unterschiedliche Symbole, die für den gleichen Akkord angezeigt werden können. Die Bezeichnungen und dargestellten Symbole können angepasst werden.
Die Standardeinstellungen für die Symbole entsprechen den Konventionen im Jazz, wie sie von Klaus Ignatzek (siehe Literature list). vorgeschlagen wurden. Das Benennungssystem für die Akkorde kann verändert werden, wie weiter unten gezeigt wird. Ein alternatives Notationssystem für Jazzakkorde ist auch erhältlich. Die Ignatzek und die alternative Jazznotation finden sich in der Tabelle in Chord name chart.
Zusätzlich zu den unterschiedlichen Bezeichnungssystemen werden
unterschiedliche Notenbezeichnungen für die Grundtöne.
Die vordefinierten Befehle \germanChords
,
\semiGermanChords
, \italianChords
und \frenchChords
setzen diese Variablen. Die Auswirkungen werden im nächsten Beispiel
gezeigt.
Wenn keine der definierten Einstellungen zum gewünschten Ergebnis führt, kann die Anzeige des Akkordsymbols durch die folgenden Eigenschaften verändert werden:
-
chordRootNamer
-
Das Akkordsymbol wird normalerweise als Buchstabe des Grundtons mit optionaler Alteration dargestellt. Die Interpretation einer Tonhöhe als Buchstabe wird von der
chordRootNamer
-Funktion übernommen. Besondere Bezeichnungen, wie etwa im Deutschen H für einen H-Dur-Akkord (und nicht „B“ wie im Englischen), können durch Hinzufügen einer neuen Funktion zu dieser Eigenschaft erstellt werden. -
majorSevenSymbol
-
Mit dieser Eigenschaft wird das Aussehen der Notation für die große Septime (7) bestimmt. Vordefiniert sind die Optionen
whiteTriangleMarkup
undblackTriangleMarkup
. -
chordNoteNamer
-
Wenn das Akkordsymbol zusätzliche Tonhöhen enthält, die nicht den Grundton darstellen (etwa eine zusätzliche Bassnote), wird diese Funktion eingesetzt, um die zusätzliche Tonhöhe auszugeben. In den Standardeinstellungen wird die Tonhöhe mit der
chordRootNamer
-Funktion gesetzt. DiechordNoteNamer
-Eigenschaft hingegen kann dieses Verhalten verändern und etwa den Basston etwa als Kleinbuchstaben darstellen. -
chordNameSeparator
-
Verschiedene Teile eines Akkordsymboles werden normalerweise durch einen Schrägstrich markiert. Indem
chordNameSeparator
ein anderer Wert zugewiesen wird, kann ein beliebiges Zeichen für den Trenner benutzt werden. -
chordNameExceptions
-
Diese Funktion ist eine Liste mit Paaren. Das erste Objekt eines Paares ist eine Anzahl von Tonhöhen, die die Stufen eines Akkordes definieren. Das zweite Objekt ist eine Beschriftung, die nach
chordRootNamer
ausgegeben wird, um das Akkordsymbol zu erstellen. -
chordPrefixSpacer
-
Das „m“ für Moll-Akkorde wird normalerweise direkt hinter dem Akkordbuchstaben gesetzt. Mit der Eigenschaft
chordPrefixSpacer
kann ein Abstand(halter) zwischen den Buchstaben und das „m“ gesetzt werden. Der Abstandhalter wird nicht verwendet, wenn der Grundton erhöht oder erniedrigt ist.
Predefined commands
\whiteTriangleMarkup
,
\blackTriangleMarkup
,
\germanChords
,
\semiGermanChords
,
\italianChords
,
\frenchChords
.
Selected Snippets
Chord name exceptions
The property chordNameExceptions
can be used to store a list of
special notations for specific chords.
% modify maj9 and 6(add9) % Exception music is chords with markups chExceptionMusic = { <c e g b d'>1-\markup { \super "maj9" } <c e g a d'>1-\markup { \super "6(add9)" } } % Convert music to list and prepend to existing exceptions. chExceptions = #( append ( sequential-music-to-chord-exceptions chExceptionMusic #t) ignatzekExceptions) theMusic = \chordmode { g1:maj9 g1:6.9 \set chordNameExceptions = #chExceptions g1:maj9 g1:6.9 } \layout { ragged-right = ##t } << \context ChordNames \theMusic \context Voice \theMusic >>
chord name major7
The layout of the major 7 can be tuned with majorSevenSymbol
.
\chords { c:7+ \set majorSevenSymbol = \markup { j7 } c:7+ }
Adding bar lines to ChordNames context
To add bar line indications in the ChordNames
context, add the
Bar_engraver
.
\new ChordNames \with { \override BarLine #'bar-size = #4 \consists "Bar_engraver" } \chordmode { f1:maj7 f:7 bes:7 }
Volta below chords
By adding the Volta_engraver
to the relevant staff, volte can be
put under chords.
\score { << \chords { c1 c1 } \new Staff \with { \consists "Volta_engraver" } { \repeat volta 2 { c'1 } \alternative { c' } } >> \layout { \context { \Score \remove "Volta_engraver" } } }
Changing chord separator
The separator between different parts of a chord name can be set to any markup.
\chords { c:7sus4 \set chordNameSeparator = \markup { \typewriter | } c:7sus4 }
See also
Notationsreferenz: Chord name chart, Common chord modifiers.
Installierte Dateien: ‘scm/chords-ignatzek.scm’, ‘scm/chord-entry.scm’, ‘ly/chord-modifier-init.ly’.
Schnipsel: Chords.
Known issues and warnings
Akkordsymbole werden von den Tonhöhenbezeichnungen innerhalb des
Akkordes und der Information über die Akkordstruktur, die innerhalb
von \chordmode
notiert wurde, bestimmt. Wenn der direkte
Notenmodus benutzt wird, stammen unerwünschte Bezeichnungen daher,
dass Umgkehrungen und zustätzliche Bassnoten nicht richtig
interpretiert werden.
myChords = \relative c' { \chordmode { c1 c/g c/f } <c e g>1 <g c e> <f c' e g> } << \new ChordNames { \myChords } \new Staff { \myChords } >>
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Customizing chord names ] | [ Nach oben : Chord notation ] | [ Introduction to figured bass > ] |
2.7.3 Figured bass
Generalbassnotation kann dargestellt werden.
Introduction to figured bass | ||
Entering figured bass | ||
Displaying figured bass |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Figured bass ] | [ Nach oben : Figured bass ] | [ Entering figured bass > ] |
Introduction to figured bass
LilyPond stellt Unterstützung für Generalbassnotation, auch als Basso Continuo bezeichnet, zur Verfügung.
<< \new Voice { \clef bass dis4 c d ais g fis} \new FiguredBass { \figuremode { < 6 >4 < 7\+ >8 < 6+ [_!] > < 6 >4 <6 5 [3+] > < _ >4 < 6 5/>4 } } >>
Die Unterstützung für Generalbass besteht aus zwei Teilen: Es gibt
einen Eingabe-Modus, aktiviert durch den Befehl \figuremode
,
in dem Ziffern für den Bass als Nummern eingegeben werden können,
und einen Kontext FiguredBass
, der dafür sorgt, dass die
entsprechenden BassFigure
-Objekte auch erstellt werden.
Generalbass kann auch in einem Staff
-Kontext dargestellt
werden.
\figures{ ... }
ist eine Kurznotation für
\new FiguredBass { \figuremode { ... } }
.
Auch wenn die Unterstützung für Generalbass auf den ersten Blick
wie die Akkordunterstützung ausschauen mag, ist sie sehr viel
einfacher. \figuremode
speichert einfach die Zahlen und der
FiguredBass
-Kontext setzt sie in der Form, wie sie notiert
wurden. Sie werden nicht in Tonhöhen umgewandelt.
See also
Glossar: figured bass.
Schnipsel: Chords
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Introduction to figured bass ] | [ Nach oben : Figured bass ] | [ Displaying figured bass > ] |
Entering figured bass
\figuremode
(Zahlenmodus) wird benutzt, um den Eingabemodus
auf den Zahlenmodus umzustellen. Mehr Information zu unterschiedlichen
Eingabemodi findet sich in Input modes.
Im Zahlenmodus wird eine Gruppe von Bassziffern mit den Zeichen
<
and >
begrenzt. Die Dauer wird nach dem >
-Zeichen
eingegeben.
\new FiguredBass { \figuremode { <6 4>2 } }
Versetzungszeichen (inklusive Auflösungszeichen) können hinzugefügt werden:
\figures { <7! 6+ 4-> <5++> <3--> }
Übermäßige und verminderte Stufen können dargestellt werden:
\figures { <6\+ 5/> <7/> }
Ein Schrägstrich von links nach rechts (üblicherweise für erhöhte Sexten benutzt) kann erstellt werden:
\figures { <6> <6\\> }
Vertikaler Platz und Klammern können zu den Zahlen hinzugefügt werden:
\figures { <[12 _!] 8 [6 4]> }
Beliebiger Text kann als Zahl notiert werden:
\figures { <\markup { \tiny \number 6 \super (1) } 5> }
Es ist auch möglich, Fortsetzungslinien für wiederholte Ziffern zu benutzen.
<< { \clef bass e4 d c b, e4 d c b, } \figures { \bassFigureExtendersOn <6 4>4 <6 3> <7 3> <7 3> \bassFigureExtendersOff <6 4>4 <6 3> <7 3> <7 3> } >>
In diesem Fall werden wiederholte Ziffern immer durch eine Linie ersetzt, es sei denn, die Linie wird explizit beendet.
<< \figures { \bassFigureExtendersOn <6 4>4 <6 4> <6\! 4\!> <6 4> } { \clef bass d4 d c c } >>
Die folgende Tabelle zeigt die vorhandenen Zahlenmodifikatoren:
Modifier | Purpose | Example |
+, -, ! | Accidentals | |
\+, / | Augmented and diminished steps | |
\\ | Raised sixth step | |
\! | End of continuation line |
Predefined commands
\bassFigureExtendersOn
,
\bassFigureExtendersOff
.
Selected Snippets
Changing the positions of figured bass alterations
Accidentals and plus signs can appear before or after the numbers,
depending on the figuredBassAlterationDirection
and
figuredBassPlusDirection
properties.
\figures { <6\+> <5+> <6 4-> r \set figuredBassAlterationDirection = #RIGHT <6\+> <5+> <6 4-> r \set figuredBassPlusDirection = #RIGHT <6\+> <5+> <6 4-> r \set figuredBassAlterationDirection = #LEFT <6\+> <5+> <6 4-> r }
See also
Schnipsel: Chords.
Referenz der Interna: BassFigure, BassFigureAlignment, BassFigureLine, BassFigureBracket, BassFigureContinuation, FiguredBass.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Entering figured bass ] | [ Nach oben : Figured bass ] | [ Ancient notation > ] |
Displaying figured bass
Generalbass kann mit dem FiguredBass
-Kontext, aber auch in
den meisten anderen Staff
-Kontexten dargestellt werden.
Wenn die Ziffern im FiguredBass
-Kontext dargestellt werden,
ist die vertikale Position der Ziffern unabhängig von den Noten
des paralellen Systems.
<< \relative c'' { c4 c'8 r8 c,4 c' } \new FiguredBass { \figuremode { <4>4 <10 6>8 s8 <6 4>4 <6 4> } } >>
In diesem Beispiel muss der FiguredBass
-Kontext explizit
erstellt werden, damit kein zusätzliches (leeres) Notensystem
erstellt wird.
Bassziffern können auch direkt einem Notensystemkontext (Staff
)
hinzugefügt werden. In diesem Fall wird ihre vertikale Position automatisch
bestimmt.
<< \new Staff = myStaff \figuremode { <4>4 <10 6>8 s8 <6 4>4 <6 4> } %% Put notes on same Staff as figures \context Staff = myStaff { \clef bass c4 c'8 r8 c4 c' } >>
Wenn Generalbass zu einem vorhandenen System hinzugefügt wird, ist es möglich, die Ziffern über oder unter dem System anzuzeigen:
<< \new Staff = myStaff \figuremode { <4>4 <10 6>8 s8 \bassFigureStaffAlignmentDown <6 4>4 <6 4> } %% Put notes on same Staff as figures \context Staff = myStaff { \clef bass c4 c'8 r8 c4 c' } >>
Schnipsel: Chords.
Referenz der Interna: BassFigure, BassFigureAlignment, BassFigureLine, BassFigureBracket, BassFigureContinuation, FiguredBass.
Known issues and warnings
Um sicherzugehen, dass die Fortsetzungslinien funktionieren, sollte der gleiche Rhythmus für die Bassfiguren und die eigentlichen Noten der Bassstimme benutzt werden.
<< { \clef bass \repeat unfold 4 { f16. g32 } f8. es16 d8 es } \figures { \bassFigureExtendersOn % The extenders are correct here, with the same rhythm as the bass \repeat unfold 4 { <6 4->16. <6 4->32 } <5>8. r16 <6>8 <6\! 5-> } >> << { \clef bass \repeat unfold 4 { f16. g32 } f8. es16 d8 es } \figures { \bassFigureExtendersOn % The extenders are incorrect here, even though the timing is the same <6 4->4 <6 4->4 <5>8. r16 <6>8 <6\! 5-> } >>
Wenn Fortsetzungslinien eingesetzt werden, können aufeinander folgende Bezifferungen mit der selben Zahl in einer anderen Position dazu führen, dass sich die Reihenfolge der Zahlen umkehrt.
<< { fis4 g g, e' } \figures { \bassFigureExtendersOn <6 5>4 <5\! 4> < 5 _!> <6> } >>
Um dieses Problem zu umgehen, kann die Fortsetzungslinie nach der Bezifferung, mit der die Linie beginnen soll, angeschaltet und am Ende der Linie wieder ausgeschaltet werden.
<< { fis4 g g, e' } \figures { <6 5>4 <5 4> \bassFigureExtendersOn < 5 _!>4 <6> \bassFigureExtendersOff } >>
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Displaying figured bass ] | [ Nach oben : Specialist notation ] | [ Introduction to ancient notation > ] |
2.8 Ancient notation
2.8.1 Introduction to ancient notation | ||
2.8.2 Alternative note signs | ||
2.8.3 Additional note signs | ||
2.8.4 Pre-defined contexts | ||
2.8.5 Transcribing ancient music | ||
2.8.6 Editorial markings |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient notation ] | [ Nach oben : Ancient notation ] | [ Ancient notation supported > ] |
2.8.1 Introduction to ancient notation
Ancient notation supported |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Introduction to ancient notation ] | [ Nach oben : Introduction to ancient notation ] | [ Alternative note signs > ] |
Ancient notation supported
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient notation supported ] | [ Nach oben : Ancient notation ] | [ Ancient note heads > ] |
2.8.2 Alternative note signs
Ancient note heads | ||
Ancient accidentals | ||
Ancient rests | ||
Ancient clefs | ||
Ancient flags | ||
Ancient time signatures |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Alternative note signs ] | [ Nach oben : Alternative note signs ] | [ Ancient accidentals > ] |
Ancient note heads
Für die Notation Alter Musik kann ein Notenkopfstil ausgewählt werden, der sich
vom Standard (default
) unterscheidet. Dies wird erreicht, indem die
style
-Eigenschaft der Notenkopf-(
NoteHead)-Objekte auf
einen der Werte baroque
, neomensural
, mensural
oder
petrucci
gesetzt wird. Der barocke (baroque
) Stil unterscheidet
sich vom Standard (default
) nur in sofern, als eine viereckige Form für
die Brevis (\breve
) benutzt wird. Der neomensural
-Stil
unterscheidet sich vom barocken Stil darin, dass hier rhomboide Notenköpfe für
ganze Noten und kleinere Notenwerte eingesetzt werden. Hälse werden über oder
unter den Notenköpfen zentriert. Dieser Stil ist vor allem dann sinnvoll, wenn
mensurale Musik transkribiert werden soll, etwa für ein Incipit. Der
mensurale (mensural
) Stil erstellt Notenköpfe, die das Aussehen
historischer Drucke des 16. Jahrhunderts imitieren. Der petrucci
-Stil
schließlich imitiert auch historische Drucke, verwendet allerdings größere
Notenköpfe.
Das folgende Beispiel soll den neomensuralen Stil demonstrieren:
\set Score.skipBars = ##t \override NoteHead #'style = #'neomensural a'\longa a'\breve a'1 a'2 a'4 a'8 a'16
Für die Notation des Gregorianischen Chorals werden vom
Vaticana_ligature_engraver automatisch die richtigen Notenköpfe
ausgewählt, so dass man den Stil nicht manuell setzen muss. Trotzdem kann
der Stil manuell verändert werden, z. B. auf den Wert
vaticana_punctum
, um Punktum-Neumen zu produzieren. Gleichfalls erstellt
der
Mensural_ligature_engraver automatisch Ligaturen der
Mensuralnotation. Siehe Ligatures zu einer Übersicht über die Funktion
und Notation von Ligaturen.
See also
Note head styles stellt einen Überblick über alle verfügbaren Notenkopfstile zur Verfügung.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient note heads ] | [ Nach oben : Alternative note signs ] | [ Ancient rests > ] |
Ancient accidentals
Mit der glyph-name-alist
-Eigenschaft der
Versetzungszeichen-(
Accidental)- und
Vorzeichen-(
KeySignature)-Eigenschaften können Vorzeichen
und Versetzungszeichen für die Alte Musik ausgewählt werden.
Wie zu sehen ist, werden nicht alle Versetzungszeichen von jedem Stil
unterstützt. Wenn versucht wird, ein Versetzungszeichen zu notieren,
das von einem bestimmten Stil nicht unterstützt wird, wechselt LilyPond zu einem
anderen Stil, wie in dem Beispiel
ancient-accidentals.ly
demonstriert wird.
Ähnlich wie Versetzungszeichen können auch die Vorzeichen für die Angabe der
Tonart verändert werden, indem die glyph-name-alist
-Eigenschaft
des
KeySignature-Objektes gesetzt wird.
See also
In diesem Handbuch: Pitches, Accidentals und Automatic accidentals geben eine allgemeine Einführung in die Benutzung von Versetzungszeichen. Der Abschnitt Key signature zeigt die allgemeine Benutzung von Vorzeichen.
Programmreferenz: KeySignature.
Beispiele: Ancient notation.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient accidentals ] | [ Nach oben : Alternative note signs ] | [ Ancient clefs > ] |
Ancient rests
Besondere Pausensymbole für die Notation der Alten Musik können mit der
style
-Eigenschaft des graphischen Objektes (grob) „Pause“
(
Rest) angewählt werden. Unterstützte Stile sind
klassisch (classical
), neomensural
und mensural
.
Der klassische (classical
) Stil unterscheidet sich vom Standardstil
(default
) nur darin, dass die Viertelpause wie eine gespiegelte
Achtelpause aussieht. Der neomensurale Stil eignet sich gut, um z. B. das
Incipit von transkribierter Musik zu notieren. Der mensurale Stil ahmt die
Form von Pausen nach, wie man sie in Drucken des 16. Jahrhunderts finden kann.
Das nächste Beispiel demonstriert den neomensuralen (neomensural
)
Stil:
\set Score.skipBars = ##t \override Rest #'style = #'neomensural r\longa r\breve r1 r2 r4 r8 r16
Es gibt keine 32-stel- und 64-stel-Pausen für den mensuralen oder neomensuralen
Stil. Anstatt dessen werden die Pausenformen des Standardstiles verwendet.
Vgl. eine Liste aller vorhandenen Pausen in pitches,rests
.
Für die Notation des Gregorianischen Chorals gibt es keine Pausen; anstelle dessen werden Divisiones verwendet.
See also
In diesem Handbuch: Der Abschnitt Rests enthält eine allgemeine Einführung zur Benutzung von Pausen.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient rests ] | [ Nach oben : Alternative note signs ] | [ Ancient flags > ] |
Ancient clefs
LilyPond unterstützt eine große Anzahl von Notenschlüsseln, von denen eine ganze Anzahl für die Alte Musik geeignet ist.
In der Tabelle unten werden alle Schlüssel für die Alte Musik gezeigt, die
mit dem \clef
-Befehl erreicht werden. Manche Schlüssel benutzen den
selben Schlüssel, unterscheiden sich aber in der Notenlinie, auf der der
Schlüssel notiert wird. In diesem Fällen ist eine Nummer im Schlüsselnamen
eingefügt. Man kann aber trotzdem eine beliebige Nummer erzwingen, wie es im
Abschnitt Clef beschrieben wird. Die Note, die rechts von jedem Schlüssel
gesetzt ist, zeigt das c'
in Bezug zu dem jeweiligen Schlüssel.
Beschreibung | Unterstützte Schlüssel | Beispiel |
Mensuraler C-Schlüssel im modernen Stil |
| |
Mensuraler C-Schlüssel im Petrucci-Stil, zur Benutzung auf verschiedenen Notenlinien (im Beispiel den Schlüssel auf der zweiten Linie) |
| |
Mensuraler F-Schlüssel im Petrucci-Stil |
| |
Mensuraler G-Schlüssel im Petrucci-Stil |
| |
Mensuraler C-Schlüssel im historischen Stil |
| |
Mensuraler F-Schlüssel im historischen Stil |
| |
Mensuraler G-Schlüssel im historischen Stil |
| |
Do-Schlüssel der Editio Vaticana |
| |
Fa-Schlüssel der Editio Vaticana |
| |
Do-Schlüssel der Editio Medicaea |
| |
Fa-Schlüssel der Editio Medicaea |
| |
Hufnagel Do-Schlüssel für den historischen Stil |
| |
Hufnagel Fa-Schlüssel für den historischen Stil |
| |
Kombinierter Do/Fa-Hufnagelschlüssel für den historischen Stil |
|
Moderner Stil bedeutet: „Wie in modernen Editionen von transkribierter Mensuralmusik benutzt.“
Petrucci-Stil bedeutet: „Inspiriert von Drucken, die der berühmte Notensetzer Petrucci (1466–1539) produziert hat.“
Historischer Stil bedeutet: „Wie in anderen als Petruccis Editionen gedruckt oder geschrieben wurde.“
Editio XXX-Stil bedeutet: „Wie in der Editio XXX gedruckt wird.“
Petrucci verwendete C-Schlüssel mit unterschiedlich balanciertem vertikalen Balken auf der linken Seite in Abhängigkeit davon, auf welcher Notenlinie der Schlüssel gesetzt wird.
See also
In diesem Handbuch: siehe Clef.
Known issues and warnings
Der mensurale G-Schlüssel ist als Petrucci-G-Schlüssel deklariert.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient clefs ] | [ Nach oben : Alternative note signs ] | [ Ancient time signatures > ] |
Ancient flags
Mit der Fähnchen-(flag-style
)-Eigenschaft der graphischen Objekte
„Hals“ (
Stem) können auch Fähnchen passend zu den Notenköpfen
der Alten Musik gesetzt werden. Neben dem Standardstil (default
) ist
auch ein mensuraler Stil (mensural
) unterstützt.
\override Stem #'flag-style = #'mensural \override Stem #'thickness = #1.0 \override NoteHead #'style = #'mensural \autoBeamOff c'8 d'8 e'8 f'8 c'16 d'16 e'16 f'16 c'32 d'32 e'32 f'32 s8 c''8 d''8 e''8 f''8 c''16 d''16 e''16 f''16 c''32 d''32 e''32 f''32
Dabei ist die innerste Fahne immer vertikal auf eine Notenlinie ausgerichtet.
Es gibt keinen eigenen Stil für die „neomensurale“ Notation. Insofern sollte für das Incipit bei der Transkription mensuraler Musik der Standardstil benutzt werden. Für die Notation des Gregorianischen Chorals gibt es keine Fähnchen.
Known issues and warnings
Die Positionierung der Fähnchen an den Hälsen ist leicht verschoben seit einer Änderung in einer frühen 2.3.x-Version.
Vertikale Ausrichtung der Fähnchen an einer Notenlinie geht von der Annahme aus, dass der Hals entweder genau auf einer Notenlinie oder genau zwischen zwei Notenlinien endet. Das ist aber nicht unbedingt immer der Fall, weil LilyPond komplizierte Methoden zur Ermittlung des besten Layouts verwendet. Diese Methoden sollten aber eigentlich nicht zur Notation von mensuraler Musik eingesetzt werden.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient flags ] | [ Nach oben : Alternative note signs ] | [ Additional note signs > ] |
Ancient time signatures
LilyPond besitzt grundlegende Unterstützung für mensurale Taktangaben. Die
Symbole sind starr verknüpft mit bestimmten Brüchen. Darum müssen die Werte
n
und m
der folgenden Tabelle in den Befehl
\time n/m
eingesetzt werden, um die entsprechenden Symbole zu erhalten.
Mit der style
-Eigenschaft des Objektes
TimeSignature
können die Taktarten angewählt werden. Unterstützte Stile sind:
neomensural
und mensural
. In der Tabelle oben wurde der
neomensurale Stil verwendet. Dieser Stil ist geeignet, um im Incipt von
transkribierter Mensuralmusik eingesetzt zu werden. Der mensurale Stil dagegen
ahmt die Form historischer Druck des 16. Jahrhunderts nach.
Im folgenden Beispiel sind die unterschiedlichen Stile dargestellt.
See also
In diesem Handbuch: Time signature bietet eine allgemeine Übersicht über den Einsatz von Taktangaben.
Known issues and warnings
Die Verhältnisse der Notenwerte ändern sich nicht, wenn die Taktart (Mensur) gewechselt wird. Zum Beispiel muss das Verhältnis 1 brevis = 3 semibrevis (tempus perfectum) manuell erstellt werden, indem folgende Variable erstellt wird:
breveTP = #(ly:make-duration -1 0 3 2) … { c\breveTP f1 }
Hiermit wird die Variable breveTP
auf den Wert
„3/2 mal 2 = 3 mal eine Ganze“ gesetzt.
Das old6/8alt
-Symbol (ein alternatives Symbol für 6/8) kann nicht
mit dem Befehl \time
angesprochen werden. Verwenden Sie anstatt dessen
eine Textbeschriftung (\markup
).
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient time signatures ] | [ Nach oben : Ancient notation ] | [ Ancient articulations > ] |
2.8.3 Additional note signs
Ancient articulations | ||
Custodes | ||
Divisiones | ||
Ligatures | ||
White mensural ligatures | ||
Gregorian square neumes ligatures |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Additional note signs ] | [ Nach oben : Additional note signs ] | [ Custodes > ] |
Ancient articulations
Zusätzlich zu den Standardartikulationszeichen, wie sie im Abschnitt Articulations and ornamentations beschrieben werden, werden auch Artikulationszeichen für die Alte Musik zur Verfügung gestellt. Diese sind darauf hin geformt, dass sie mit der Notation des Editio Vaticana-Stils verwendet werden können.
\include "gregorian.ly" \score { \new VaticanaVoice { \override TextScript #'font-family = #'typewriter \override TextScript #'font-shape = #'upright \override Script #'padding = #-0.1 a\ictus_"ictus" \break a\circulus_"circulus" \break a\semicirculus_"semicirculus" \break a\accentus_"accentus" \break \[ a_"episem" \episemInitium \pes b \flexa a b \episemFinis \flexa a \] } }
Known issues and warnings
Einige Artikulationszeichen sind vertikal zu dich an den entsprechenden Notenköpfen gesetzt.
Die Episem-Linie wird in vielen Fällen nicht angezeigt. Wenn sie angezeigt wird, ist das rechte Ende der Episem-Linie oft zu weit rechts.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient articulations ] | [ Nach oben : Additional note signs ] | [ Divisiones > ] |
Custodes
Ein custos (Plural: custodes; Lateinisch: „Beschützer“) ist ein Symbol, das am Ende jedes Notensystems erscheint. Es nimmt die Tonhöhe der ersten Note der nächsten Zeile vorweg und hilft damit dem Vortragenden, die Zeilenwechsel während der Vorführung zu bewältigen.
Custodes wurden bis zum 17. Jahrhundert sehr häufig in der Musiknotation eingesetzt. Heute finden sie sich nur noch in einigen bestimmten Notationsformen, etwa modernen Editionen des Gregorianischen Chorals wie die editio vaticana. LilyPond stellt unterschiedliche Custos-Symbole für die unterschiedlichen Notationsstile zur Verfügung.
Damit Custodes angezeigt werden, muss ein Custos_engraver im Staff-Kontext gefordert werden. Der Aufruf folgt im Rahmen des Layout-Kontextes, wie das folgende Beispiel zeigt.
\layout { \context { \Staff \consists Custos_engraver Custos \override #'style = #'mensural } }
Das Ergebnis sieht ungefähr folgendermaßen aus:
Das Custos-Zeichen wird von der style
-Eigenschaft ausgewählt. Die
unterstützten Stile sind: vaticana
, medicaea
, hufnagel
und mensural
. Sie werden im folgenden Fragment demonstriert.
See also
Programmreferenz: Custos.
Beispiele: Ancient notation.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Custodes ] | [ Nach oben : Additional note signs ] | [ Ligatures > ] |
Divisiones
Eine divisio (Plural: divisiones; Latein: „Teilung“) ist ein Symbol des Notensystemkontextes, das benutzt wird, um Phrasierung und Abschnitte im Gregorianischen Choral anzuzeigen. Die musikalische Bedeutung von divisio minima, divisio maior und divisio maxima kann beschrieben werden als kurze, mittlere und lange Pause, ungefähr wie die Atemzeichen aus dem Abschnitt Breath marks. Das finalis-Zeichen bezeichnet nicht nur das Ende eines Chorals, sondern wird auch oft innerhalb eines Antiphons/Responsoriums benutzt, um das Ende eines Abschnitts anzuzeigen.
Divisiones können benutzt werden, indem die Datei ‘gregorian-init.ly’
in die Quelldatei eingefügt wird. Hier sind die entsprechenden Definitionen
schon abgelegt, so dass es genügt, die Befehle \divisioMinima
,
\divisioMaior
, \divisioMaxima
und \finalis
an den
entsprechenden Stellen zu schreiben. Einige Editionen verwenden eine
virgula oder caesura anstelle der divisio minima. Darum findet
sich in der Datei ‘gregorian-init.ly’ auch eine Definition für
\virgula
und \caesura
.
Predefined commands
\virgula
,
\caesura
,
\divisioMinima
,
\divisioMaior
,
\divisioMaxima
,
\finalis
.
See also
In diesem Handbuch: Breath marks.
Programmreferenz: BreathingSign.
Beispiele: Winds.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Divisiones ] | [ Nach oben : Additional note signs ] | [ White mensural ligatures > ] |
Ligatures
Eine Ligatur ist ein graphisches Symbol das wenigstens zwei unterschiedliche Noten darstellt. Ligaturen treten ursprünglich in Manuskripten des Gregorianischen Chorals auf, um auf- oder absteigende Notensequenzen zu notieren.
Ligaturen werden eingegeben, indem die dazugehörigen Noten zwischen
\[
und \]
eingeschlossen werden. Einige Ligaturstile benötigen
zusätzliche Syntax für eine bestimmte Ligatur. In der Standardeinstellung
setzt der
LigatureBracket ganz einfach eckige Klammern über
die Noten der Ligatur.
\transpose c c' { \[ g c a f d' \] a g f \[ e f a g \] }
Um einen gestimmten Ligaturstil auszuwählen, muss ein entsprechender Ligatur-Engraver zum Stimmkontext hinzugefügt werden, wie in den folgenden Abschnitten erklärt wird. Nur weiße Mensuralligaturen sind unterstützt – mit Einschränkungen.
Known issues and warnings
Ligaturen benötigen von klassischer Notation unterschiedliche Platzaufteilung, was sie aber noch nicht können. Darum ist fast immer zu viel Platz zwischen Ligaturen und Zeilenumbrüche sind ungenügend. Text lässt sich auch nicht richtig an Ligaturen ausrichten.
Akzidentien dürfen nicht innerhalb von einer Ligatur gedruckt werden, sondern müssen gesammelt und vor der Ligatur ausgegeben werden.
Die Syntax verwendet immer noch den verworfenen Infix-Stil (\[
musik. Ausdr. \]
). Für die Konsistenz soll dies geändert werden in den
Postfix-Stil (Note\[ ... Note\]
). Alternativ kann die Datei
‘gregorian-init.ly’ eingefügt werden, die eine Scheme-Funktion
\ligature musik. Ausdr.
mit der selben Wirkung zur Verfügung stellt und stabil zu sein scheint.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ligatures ] | [ Nach oben : Additional note signs ] | [ Gregorian square neumes ligatures > ] |
White mensural ligatures
Begrenzte Unterstützung für Ligaturen der weißen Mensuralnotation.
Um weiße Mensuralligaturen zu benutzen, muss innerhalb des Layout-Blocks im Voice-Kontext der Mensural_ligature_engraver aktiviert werden und gleichzeitig der Ligature_bracket_engraver (der die Klammern über den Noten setzt) entfernt werden, wie im Beispiel.
\layout { \context { \Voice \remove Ligature_bracket_engraver \consists Mensural_ligature_engraver } }
Zusätzlich zu diesen Einstellungen gibt es keine eigenen Befehle, die die Form einer Ligatur bestimmen. Die Form wird vielmehr aus Tonhöhen und Tondauern der in Klammern gesetzten Noten geschlossen. Diese Herangehensweise erfordert einige Eingewöhnung, hat aber den großen Vorteil, dass der musikalische Inhalt der Ligatur dem Programm bekannt ist. Das ist nicht nur notwendig für korrekte MIDI-Ausgabe, sondern erlaubt es auch, automatische Transkriptionen von Ligaturen anzufertigen.
Eine Datei kann zum Beispiel so aussehen:
\set Score.timing = ##f \set Score.defaultBarType = "empty" \override NoteHead #'style = #'neomensural \override Staff.TimeSignature #'style = #'neomensural \clef "petrucci-g" \[ c'\maxima g \] \[ d\longa c\breve f e d \] \[ c'\maxima d'\longa \] \[ e'1 a g\breve \]
Wenn der Ligature_bracket_engraver nicht durch den Mensural_ligature_engraver ersetzt wird, werden die Noten wie folgt ausgegeben:
Known issues and warnings
Die horizontale Positionierung ist sehr schlecht.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < White mensural ligatures ] | [ Nach oben : Additional note signs ] | [ Pre-defined contexts > ] |
Gregorian square neumes ligatures
Beschränkte Unterstützung für gregorianische Quadratneumen-Ligaturen (nach dem Stil der Editio Vaticana) ist vorhanden. Die wichtigsten Ligaturen können schon gesetzt werden, aber wichtige Eigenschaften anspruchsvoller Typographie wie horizontale Ausrichtung von mehreren Ligaturen, korrekte Silbenpositionierung und richtiger Umgang mit Versetzungszeichen fehlen noch.
Die folgende Tabelle enthält die erweiterte Neumenliste des zweiten Bands des Antiphonale Romanum (Liber Hymnarius), 1983 von den Mönchen von Solesmes herausgegeben.
Neuma aut | Figurae | Figurae | Figurae |
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
| |||
|
Anders als in den meisten Neumennotationssystemen zeigt der Quellcode
von LilyPond nicht das typographische Aussehen der Ligatur an, sondern
deren musikalischen Inhalt. Der Code \[ a \pes b
\flexa g \]
etwa ergibt einen Torculus, der aus drei Punctum-Köpfen besteht,
während \[ a \flexa g \pes b \]
einen Porrectus mit einer gekrümmten
Flexa und einem einzelnen Punctum ausgibt.
Es gibt also keinen Befehl, der explizit eine gekrümmte Flexa setzen würde;
die Entscheidung, wann diese gesetzt werden soll hängt vielmehr davon ab,
welcher musikalische Inhalt dargestellt werden soll. Der Sinn dieser
Herangehensweise ist es, den Inhalt von der graphischen Repräsentation zu
trennen. Auf diese Art kann mit der gleichen Eingabe ein anderer gregorianischer
Stil gesetzt werden, ohne die Notation zu verändern.
Die folgende Tabelle zeigt Code-Fragmente, mit denen die Ligaturen der vorigen
Tabelle erstellt werden können. Der Buchstabe in der ersten Spalte jeder Zeile
der unteren Tabelle zeigt an, auf welche Ligatur in der vorigen Tabelle sie sich
bezieht. In der zweiten Spalte erscheint die Bezeichnung der Ligatur. Die dritte
Spalte enthält das Fragment, mit dem die Ligatur erzeugt wurde, wobei
g
, a
und b
als Beispieltonhöhen eingesetzt werden.
# | Name | Input Language |
a | Punctum |
|
b | Punctum Inclinatum |
|
c | Punctum Auctum |
|
d | Punctum Auctum |
|
e | Punctum Inclinatum |
|
f | Punctum Inclinatum |
|
g | Virga |
|
h | Stropha |
|
i | Stropha Aucta |
|
j | Oriscus |
|
k | Clivis vel Flexa |
|
l | Clivis Aucta |
|
m | Clivis Aucta |
|
n | Cephalicus |
|
o | Podatus vel Pes |
|
p | Pes Auctus |
|
q | Pes Auctus |
|
r | Epiphonus |
|
s | Pes Quassus |
|
t | Pes Quassus |
|
u | Quilisma Pes |
|
v | Quilisma Pes |
|
w | Pes Initio Debilis |
|
x | Pes Auctus Descendens |
|
y | Torculus |
|
z | Torculus Auctus |
|
A | Torculus Deminutus |
|
B | Torculus Initio Debilis |
|
C | Torculus Auctus |
|
D | Torculus Deminutus |
|
E | Porrectus |
|
F | Porrectus Auctus |
|
G | Porrectus Deminutus |
|
H | Climacus |
|
I | Climacus Auctus |
|
J | Climacus Deminutus |
|
K | Scandicus |
|
L | Scandicus Auctus |
|
M | Scandicus Deminutus |
|
N | Salicus |
|
O | Salicus Auctus Descendens |
|
P | Trigonus |
|
Die Ligaturen dieser Liste dienen als begrenzter, aber doch
repräsentativer Vorrat an Ligaturbeispielen des Gregorianischen
Chorals. Innerhalb der Ligaturbegrenzungen \[
und
\]
kann jedoch problemlos jede nur mögliche Anzahl an
Noten gesetzt werden, und Präfixe wie
\pes
, \flexa
, \virga
, \inclinatum
,
usw können nach Belieben gemischt werden. Die Regeln,
die der Konstruktion der Ligaturen in den Tabellen zugrunde liegen,
werden entsprechend angepasst. Auf diese Weise können unendlich
viele Ligaturen gesetzt werden.
Augmentum-Punkte, auch morae genannt, werden mit dem
Befehl \augmentum
hinzugefügt. \augmentum
ist allerdings
als eigene musikalische Funktion gebaut und nicht als ein Notenpräfix.
Insofern hat der Befehl in diesem Kontext:
\augmentum \virga c
keine sichtbaren Auswirkungen. Erst mit
\virga \augmentum c
oder \augmentum {\virga c}
funktionieren beide Befehle. Es ist auch möglich, mit
\augmentum {a g}
die Schreibweise
\augmentum a \augmentum g
abzukürzen.
\include "gregorian.ly" \score { \new VaticanaVoice { \[ \augmentum a \flexa \augmentum g \] \augmentum g } }
Predefined commands
Folgende Notenpräfixe sind unterstützt:
\virga
,
\stropha
,
\inclinatum
,
\auctum
,
\descendens
,
\ascendens
,
\oriscus
,
\quilisma
,
\deminutum
,
\cavum
,
\linea
.
Präfixe können kombiniert werden, wenn es hier auch Begrenzungen
gibt. Zum Beispiel können die Präfixe \descendens
oder
\ascendens
vor einer Note geschrieben werden, aber nicht
beide für die selbe Note
.
Zwei benachbarte Noten können mit den \pes
und
\flexa
-Infixen verbunden werden, um eine steigende bwz.
fallende Melodielinie zu notieren.
Die musikalische Funktion \augmentum
muss benutzt werden, um
augmentum-Punkte hinzuzufügen.
Known issues and warnings
Wenn ein \augmentum
-Punkt am Ende des letzten Systems innerhalb
einer Ligatur gesetzt wird, ist er vertikal etwas falsch positioniert. Als
Abhilfe kann eine unsichtbare Note (z. B. s8
) als letzte Note im
System eingegeben werden.
\augmentum
sollte als Präfix implementiert sein, nicht als eigene
musikalische Funktion, so dass \augmentum
mit den anderen
Präfixen in arbiträrer Reihenfolge notiert werden kann.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Gregorian square neumes ligatures ] | [ Nach oben : Ancient notation ] | [ Gregorian chant contexts > ] |
2.8.4 Pre-defined contexts
Gregorian chant contexts | ||
Mensural contexts |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Pre-defined contexts ] | [ Nach oben : Pre-defined contexts ] | [ Mensural contexts > ] |
Gregorian chant contexts
Die vordefinierten Kontexte VaticanaVoiceContext
(für eine
gregorianische Stimme) und VaticanaStaffContext
(für ein
gregorianisches Notensystem) können eingesetzt werden, um
Gregorianischen Choral im Stil der Editio Vaticana zu setzen. Diese
Kontexte initialisieren alle relevanten Eigenschaften für das Notensystem
und die graphischen Objekte, so dass unmittelbar mit der Notation
begonnen werden kann. Siehe das folgende Beispiel:
\include "gregorian.ly" \score { << \new VaticanaVoice = "cantus" { \[ c'\melisma c' \flexa a \] \[ a \flexa \deminutum g\melismaEnd \] f \divisioMinima \[ f\melisma \pes a c' c' \pes d'\melismaEnd \] c' \divisioMinima \break \[ c'\melisma c' \flexa a \] \[ a \flexa \deminutum g\melismaEnd \] f \divisioMinima } \new Lyrics \lyricsto "cantus" { San- ctus, San- ctus, San- ctus } >> }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Gregorian chant contexts ] | [ Nach oben : Pre-defined contexts ] | [ Transcribing ancient music > ] |
Mensural contexts
Die vordefinierten Kontexte MensuralVoiceContext
und
MensuralStaffContext
können eingesetzt werden, um
ein Stück in Mensuralnotations zu schreiben. Die Kontexte
initialisieren alle relevanten Eigenschaften der Kontexte und
graphischen Objekte, so dass unmittelbar mit der Notation begonnen
werden kann. Siehe das folgende Beispiel:
\score { << \new MensuralVoice = "discantus" \transpose c c' { \override Score.BarNumber #'transparent = ##t { c'1\melisma bes a g\melismaEnd f\breve \[ f1\melisma a c'\breve d'\melismaEnd \] c'\longa c'\breve\melisma a1 g1\melismaEnd fis\longa^\signumcongruentiae } } \new Lyrics \lyricsto "discantus" { San -- ctus, San -- ctus, San -- ctus } >> }
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Mensural contexts ] | [ Nach oben : Ancient notation ] | [ Ancient and modern from one source > ] |
2.8.5 Transcribing ancient music
Ancient and modern from one source | ||
Incipits | ||
Mensurstriche layout | ||
Transcribing Gregorian chant |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Transcribing ancient music ] | [ Nach oben : Transcribing ancient music ] | [ Incipits > ] |
Ancient and modern from one source
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Ancient and modern from one source ] | [ Nach oben : Transcribing ancient music ] | [ Mensurstriche layout > ] |
Incipits
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Incipits ] | [ Nach oben : Transcribing ancient music ] | [ Transcribing Gregorian chant > ] |
Mensurstriche layout
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Mensurstriche layout ] | [ Nach oben : Transcribing ancient music ] | [ Editorial markings > ] |
Transcribing Gregorian chant
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Transcribing Gregorian chant ] | [ Nach oben : Ancient notation ] | [ Annotational accidentals > ] |
2.8.6 Editorial markings
Annotational accidentals | ||
Baroque rhythmic notation |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Editorial markings ] | [ Nach oben : Editorial markings ] | [ Baroque rhythmic notation > ] |
Annotational accidentals
In der europäischen Musik vor 1600 wurden vom Sänger oftmals chromatische Alterationen erwartet, die nicht notiert wurden. Diese Praxis wird „Musica Ficta“ genannt. In modernen Transkripition werden die Versetzungszeichen üblicherweise oberhalb der Noten gesetzt.
Unterstützung für solche empfohlenen Versetzungszeichen ist
implementiert und kann aktiviert werden, indem die
Eigenschaft suggestAccidentals
auf wahr gesetzt wird.
Siehe auch das Beispiel.
fis gis \set suggestAccidentals = ##t ais bis
See also
Programmreferenz: Accidental_engraver-Setzer und das AccidentalSuggestion-Objekt.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Annotational accidentals ] | [ Nach oben : Editorial markings ] | [ World music > ] |
Baroque rhythmic notation
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Baroque rhythmic notation ] | [ Nach oben : Specialist notation ] | [ Arabic music > ] |
2.9 World music
Dieser Abschnitt soll Besonderheiten der Notation aufzeigen, die insbesondere relevant sind, um Musik nicht-westlicher Tradition zu notieren.
2.9.1 Arabic music |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < World music ] | [ Nach oben : World music ] | [ References for Arabic music > ] |
2.9.1 Arabic music
Dieser Abschnitt zeigt Möglichkeiten, wie arabische Musik notiert werden kann.
References for Arabic music | ||
Arabic note names | ||
Arabic key signatures | ||
Arabic time signatures | ||
Arabic music example | ||
Further reading |
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Arabic music ] | [ Nach oben : Arabic music ] | [ Arabic note names > ] |
References for Arabic music
Arabische Musik wurde bisher vor allem mündlich tradiert. Wenn Musik transkribiert wird, handelt es sich meistens um ein Gerüst, auf dem der Musiker eigene Improvisationen ausführt. Mehr und mehr wird die westliche Notation mit einigen Veränderungen benutzt, um die arabische Musiktradition weiterzugeben und zu konservieren.
Einige Elemente der westlichen Notation wie etwa die Transkription von Akkorden oder eigenständige Stimmen werden für die traditionelleren arabischen Noten nicht benötigt. Es gibt allerdings einige andere Probleme, wie etwa die Notwendigkeit, Zwischenintervalle zu notieren, die sich irgendwo zwischen einem Halbton und einem Ganzton befinden. Daneben werden auch die westlichen Halb- und Ganztöne eingesetzt. Es muss auch möglich sein, eine große Anzahl an maqam (Modi) der arabischen Musik zu bezeichnen und zu gruppieren.
Üblicherweise müssen Mikrotöne in der arabischen Musik nicht präzise notiert werden.
Einige Bereiche, die für die arabische Notation wichtig sind, sind an anderer Stelle behandelt:
- Notenbezeichnungen und Versetzungszeichen (inklusive Vierteltöne) können angepasst werden, wie behandelt in Note names in other languages.
- Zusätzliche Taktarten können erstellt werden, siehe Key signature.
- Komplexe Taktarten erfordern evtl., dass Noten manual gruppiert werden, wie gezeigt in Manual beams.
- Takasim, rhythmisch freie Improvisationen, können ohne Taktlinien notiert werden, siehe hierzu Unmetered music.
See also
Notationsreferenz: Note names in other languages, Key signature, Manual beams.
Schnipsel: World music.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < References for Arabic music ] | [ Nach oben : Arabic music ] | [ Arabic key signatures > ] |
Arabic note names
An der arabischen Tradition orientierte Notenbezeichnungen können sehr
land sein und eignen sich daher nicht gut für die Notation von Musik.
Sie werden nicht benutzt. Englische Notenbezeichnungen hingegen sind
in der arabischen Musikerziehung recht unbekannt, weshalb italienische
Notenbezeichnungen (do, re, mi, fa, sol, la, si
) eingesetzt
werden. Modifikatoren (Versetzungszeichen) können auch benutzt werden,
wie gezeigt in Note names in other languages.
Hier ein Beispiel der arabischen rast-Tonleiter:
\include "arabic.ly" \relative do' { do re misb fa sol la sisb do sisb la sol fa misb re do }
Das Symbol für das Halb-B sieht anders aus als das Symbol, was
üblicherweise in arabischer Notation benutzt wird. Das
\dwn
-Symbol, das in der Datei arabic.ly
definiert
ist, kann als ein Workaround eingesetzt werden, wenn es notwendig
ist, das arabische Symbol zu benutzen. Das Aussehen des
Halb-Bs in den Vorzeichen kann mit dieser methode nicht verändert
werden.
\include "arabic.ly" \relative do' { \set Staff.extraNatural = ##f dod dob dosd \dwn dob dobsb dodsd do do }
See also
Notationsreferenz: Note names in other languages.
Schnipsel: World music.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Arabic note names ] | [ Nach oben : Arabic music ] | [ Arabic time signatures > ] |
Arabic key signatures
Neben den westlichen Dur- und Moll-Tonarten sind folgende
Tonarten in arabic.ly
definiert: bayati,
rast, sikah, iraq und
kurd. Diese Tonarten definieren eine kleine
Gruppe von Maqams, die weitverbreitet sind.
Ein Maqam kann die Tonart der Gruppe benutzen, zu der er gehört, oder die einer benachbarten Gruppe. Zusätzlich können verschiedene Versetzungszeichen in den Noten markiert werden.
Um also etwa die Tonart des Maqams „muhayer“ folgendermaßen notiert:
\key re \bayati
re ist die Tonhöhe für den „muhayer“-Maqam und bayati ist die Bezeichnung des Basismaqams der Gruppe.
Während die Vorzeichen eine Gruppe anzeigen, wird meistens der eigentliche Maqam im Titel definiert. In diesem Beispiel müsste also der „muhayer“-Maqam im Titel erscheinen.
Andere Maqams derselben Bayati-Gruppe, wie in der Tabelle unten gezeigt ((bayati, hussaini, saba und ushaq) können auf die gleiche Weise notiert werden. Sie sind alle Variationen des Grundmaqams Bayati. Sie unterscheiden sich üblicherweise vom grundlegenden Maqam in ihrem oberen Tetrachord oder in bestimmten Einzelheiten, die aber nicht ihre eigentliche Qualität verändern.
Der andere Maqam der gleichen Gruppe (Nawa) ist mit bayati durch eine Modulation verwandt, deren Grundton in der Tabelle angezeigt wird, wenn es sich um einen Maqam handelt, der eine Modulation eines anderen Maqams darstellt. Nawa kann folgenderweise notiert werden:
\key sol \bayati
In der arabischen Musik ist ein Begriff wie bayati, der eine Maqam-Gruppe bezeichnet, gleichzeitig auch selber ein Maqam, meistens der häufigste dieser Gruppe.
Hier ist eine Möglichkeit, Maqams zu gruppieren, womit die häufigsten Maqams bestimmten Vorzeichen zugeordnet werden:
Maqam-Gruppe | Vorzeichen ( | Finalis | Andere Maqams der Gruppe (Finalis) |
---|---|---|---|
ajam | major | sib | jaharka (fa) |
bayati | bayati | re | hussaini, muhayer, saba, ushaq, nawa (sol) |
hijaz | kurd | re | shahnaz, shad arban (sol), hijazkar (do) |
iraq | iraq | sisb | - |
kurd | kurd | re | hijazkar kurd (do) |
nahawand | minor | do | busalik (re), farah faza (sol) |
nakriz | minor | do | nawa athar, hisar (re) |
rast | rast | do | mahur, yakah (sol) |
sikah | sikah | misb | huzam |
Selected Snippets
Untypische Tonarten
Der üblicherweise benutzte \key
-Befehl setzt die
keySignature
-Eigenschaft im Staff
-Kontext.
Um untypische Tonartenvorzeichen zu erstellen, muss man diese Eigenschaft
direkt setzen. Das Format für den Befehl ist eine Liste: \set
Staff.keySignature = #`(((Oktave . Schritt) . Alteration) ((Oktave
. Schritt) . Alteration) ...)
wobei für jedes Element in der Liste
Oktave
die Oktave angibt (0 ist die Oktave vom
eingestrichenen C bis zum eingestrichenen H), Schritt
gibt
die Note innerhalb der Oktave an (0 heißt C und
6 heißt H), und Alteration
ist ,SHARP ,FLAT
,DOUBLE-SHARP
usw. (Beachte das beginnende Komma.)
Alternativ kann auch jedes Element der Liste mit dem allgemeineren Format
(Schritt . Alteration)
gesetzt werden, wobei dann die Einstellungen
für alle Oktaven gelten.
Hier ein Beispiel einer möglichen Tonart für eine Ganztonleiter:
\relative c' { \set Staff.keySignature = #`(((0 . 3) . ,SHARP) ((0 . 5) . ,FLAT) ((0 . 6) . ,FLAT)) c4 d e fis aes4 bes c2 }
See also
Notationsreferenz: Key signature.
Handbuch zum Lernen: Accidentals and key signatures.
Referenz der Interna: KeySignature.
Schnipsel: World music, Pitches.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Arabic key signatures ] | [ Nach oben : Arabic music ] | [ Arabic music example > ] |
Arabic time signatures
Einige klassische Formen der arabischen und türkischen Musik wie etwa Semai haben ungewöhnliche Taktarten wie etwa 10/8. Das kann dazu führen, dass die automatische Bebalkung der Noten nicht zu dem Ergebnis kommt, welches in der üblichen Notation dieser Musik eingesetzt wird. Die Noten werden nicht anhand einer Taktzeit, sondern anhand von Kriterien gruppiert, die man schwer mit einer automatischen Balkenfunktion erfassen kann. Das kann umgangen werden, indem die automatische Bebalkung ausgeschaltet wird und die Balken explizit gesetzt werden. Auch wenn es nicht darauf ankommen sollte, eine schon notierte Musik nachzuahmen, ist es in vielen Fällen dennoch erforderlich, die Bebalkung anzupassen und/oder zusammengesetzte Taktarten zu benutzen.
Selected Snippets
Zusammengesetzte Taktarten
Ungerade Taktarten werden (wie etwa "5/8") werden oft als zusammengesetzte Taktarten interpretiert (bspw. "3/8 + 2/8"), in welchen zwei oder mehr Teiltakte unterschieden werden. LilyPond kann derartige Noten produzieren, indem entsprechende Taktarten gesetzt werden und die automatische Bebalkung angepasst wird.
#(define ((compound-time one two num) grob) (grob-interpret-markup grob (markup #:override '(baseline-skip . 0) #:number (#:line ( (#:column (one num)) #:vcenter "+" (#:column (two num))))))) \relative c' { \override Staff.TimeSignature #'stencil = #(compound-time "2" "3" "8") \time 5/8 #(override-auto-beam-setting '(end 1 8 5 8) 1 4) c8 d e fis gis c8 fis, gis e d c8 d e4 gis8 }
Arabic improvisation
For improvisations or taqasim which are temporarily free, the time
signature can be omitted and \cadenzaOn
can be used. Adjusting
the accidental style might be required, since the absence of bar lines
will cause the accidental to be marked only once. Here is an example
of what could be the start of a hijaz improvisation:
\include "arabic.ly" \relative sol' { \key re \kurd #(set-accidental-style 'forget) \cadenzaOn sol4 sol sol sol fad mib sol1 fad8 mib re4. r8 mib1 fad sol }
See also
Notationsreferenz: Manual beams, Automatic beams, Unmetered music, Automatic accidentals, Setting automatic beam behavior, Time signature.
Schnipsel: World music.
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Arabic time signatures ] | [ Nach oben : Arabic music ] | [ Further reading > ] |
Arabic music example
Hier eine Vorlage, welche den Beginn eines türkischen Semai benutzt, der in der arabischen Musikerziehung oft herangezogen wird, um Besonderheiten der arabischen Musiknotation, wie etwa Zwischenintervalle und ungewöhnliche Modi, zu illustrieren.
\include "arabic.ly" \score { \relative re' { \set Staff.extraNatural = ##f \set Staff.autoBeaming = ##f \key re \bayati \time 10/8 re4 re'8 re16 [misb re do] sisb [la sisb do] re4 r8 re16 [misb do re] sisb [do] la [sisb sol8] la [sisb] do [re] misb fa4 fa16 [misb] misb8. [re16] re8 [misb] re [do] sisb do4 sisb8 misb16 [re do sisb] la [do sisb la] la4 r8 } \header { title = "Semai Muhayer" composer = "Jamil Bek" } }
See also
Schnipsel: World music
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ General input and output >> ] | ||
[ < Arabic music example ] | [ Nach oben : Arabic music ] | [ General input and output > ] |
Further reading
-
The Music of the Arabs von Habib Hassan Touma (Amadeus Press, 1996)
enthält eine Beschreibung von Maqams und Methoden zu ihrer
Gruppierung.
Es gibt auch einige Internetseiten, die Maqams erklären und teilweise auch Klangdateien zur Verfügung stellen:
Die Maqam-Gruppierungen unterscheiden sich in einigen Details, auch wenn die allgemeinen Kriterien weithin anerkannt sind: gemeinsame untere Tetrachorde sowie Modulation.
-
Es gibt keine Übereinstimmung darüber, wie die Vorzeichen für
bestimmte Maqams angegeben werden sollen. Oft wird eine
Vorzeichenart für eine ganze Maqam-Gruppe verwendet, anstatt
dass jeder Maqam eigene Vorzeichen hätte.
Oud-Lehrbücher folgender Autoren enthalten Beispiele vor allem türkischer und arabischer Kompositionen:
- Charbel Rouhana
- George Farah
- Ibrahim Ali Darwish Al-masri
[ << Specialist notation ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Further reading ] | [ Nach oben : Top ] | [ Input structure > ] |
3. General input and output
Dieses Kapitel erklärt allgemeine Fragen zur Eingabe und Ausgabe von Notation mit LilyPond und weniger direkte Fragen der Notation.
3.1 Input structure | ||
3.2 Titles and headers | ||
3.3 Working with input files | ||
3.4 Controlling output | ||
3.5 MIDI output |
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < General input and output ] | [ Nach oben : General input and output ] | [ Structure of a score > ] |
3.1 Input structure
Das hauptsächliche Eingabeformat von LilyPond sind Textdateien.
Üblicherweise werden diese Dateien mit der Endung .ly
versehen.
3.1.1 Structure of a score | ||
3.1.2 Multiple scores in a book | ||
3.1.3 File structure |
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Input structure ] | [ Nach oben : Input structure ] | [ Multiple scores in a book > ] |
3.1.1 Structure of a score
Eine \score
-Umgebung muss einen einzelnen musikalischen
Ausdruck beinhalten, der durch geschweifte Klammern begrenzt wird:
\score { ... }
Achtung: Es darf nur ein äußerer musikalischer Ausdruck
in der |
Dieser einzelne musikalische Ausdruck kann beliebige Größe annehmen und andere musikalische Ausdrücke von beliebiger Komplexität beinhalten. Alle diese Beispielse sind musikalische Ausdrücke:
{ c'4 c' c' c' }
{ { c'4 c' c' c'} { d'4 d' d' d'} }
<< \new Staff { c'4 c' c' c' } \new Staff { d'4 d' d' d' } >>
{ \new GrandStaff << \new StaffGroup << \new Staff { \Flöte } \new Staff { \Oboe } >> \new StaffGroup << \new Staff { \GeigeI } \new Staff { \GeigeII } >> >> }
Kommentare bilden eine Ausnahme dieser Regel. (Andere Ausnahmen
siehe File structure.) Sowohl einzeilige als auch
Blockkommentare (eingegrenzt durch %{ .. %}
) können
an beliebiger Stelle einer Eingabedatei geschrieben werden. Sie
können innerhalb oder außerhalb der \score
-Umgebung vorkommen,
und innerhalb oder außerhalb des einzelnen musikalischen Ausdrucks
innerhalb der \score
-Umgebung.
See also
Handbuch zum Lernen: Working on input files, Music expressions explained, Score is a (single) compound musical expression.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Structure of a score ] | [ Nach oben : Input structure ] | [ File structure > ] |
3.1.2 Multiple scores in a book
Eine Partitur kann mehrere musikalische Stücke und verschiedene
Texte beinhalten. Beispiele hierzu sind etwa eine Etüdensammlung
oder ein Orchesterstück mit mehreren Sätzen. Jeder Satz wird
in einer eigenen \score
-Umgebung notiert:
\score { ..Noten.. }
und Texte werden mit einer \markup
-Umgebung geschrieben:
\markup { ..Text.. }
Alle Sätze und Texte, die in derselben .ly
-Datei vorkommen,
werden normalerweise in eine einzige Ausgabedatei gesetzt.
\score { .. } \markup { .. } \score { .. }
Wenn Sie aber mehrere Ausgabedateien aus einer einzigen .ly
-Datei
erstellen wollen, können Sie mehrere \book
-Umgebungen notieren.
Wenn Sie keine \book
-Umgebung in Ihrer Datei angeben, interpretiert
LilyPond die gesamte Datei als eine große \book
-Umgebung (siehe
auch File structure. Eine wichtige Ausnahme stellen Dokumente dar,
die mit lilypond-book erstellt werden, für die Sie explizit
\book
-Umgebungen notieren müssen, weil sonst nur die erste
\score
- bzw. \markup
-Umgebung angezeigt wird.
Der Kopfbereich für jedes Musikstück kann innerhalb der \score
-Umgebung
definiert werden. Die piece
-(Stück)-Bezeichnung aus dieser
\header
-Umgebung wird vor jedem Satz ausgegeben. Die Überschrift für
ein ganzes Buch kann innerhalb von \book
notiert werden, aber wenn
diese Umgebung fehlt, wird die \header
-Umgebung genommen, die auf
erster Ebene der Datei notiert ist.
\header { title = "Acht Miniaturen" composer = "Igor Stravinsky" } \score { … \header { piece = "Romanze" } } \markup { ..Text der zweiten Strophe.. } \markup { ..Text der dritten Strophe.. } \score { … \header { piece = "Menuetto" } }
Stücke können innerhalb eines Buches mit \bookpart
gruppiert
werden. Derartige Buchabschnitte werden durch einen Seitenumbruch
voneinander getrennt und können wie auch das ganze Buch selber mit
einem Titel innerhalb einer \header
-Umgebung beginnen.
\bookpart { \header { title = "Buchtitel" subtitle = "Erster Teil" } \score { … } … } \bookpart { \header { subtitle = "Zweiter Teil" } \score { … } … }
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Multiple scores in a book ] | [ Nach oben : Input structure ] | [ Titles and headers > ] |
3.1.3 File structure
Eine .ly
-Datei kann eine belibige Anzahl an Ausdrücken
auf der obersten Ebene beinhalten, wobei ein Ausdrück der obersten
Ebene einer der folgenden sein kann:
-
Eine Ausgabedefinition, wie
\paper
,\midi
und\layout
. Derartige Definitionen auf oberster Ebene verändern die globalen Einstellungen für das ganze „Buch“. Wenn mehr als eine derarte Definition desselben Typs angegeben wird, hat die spätere Vorrang. -
Ein direkter Scheme-Ausdruck, wie etwa
#(set-default-paper-size "a7" 'landscape)
oder#(ly:set-option 'point-and-click #f)
. -
Eine
\header
-Umgebung. Damit wird die globale Titelei eingestellt. Das ist die Umgebung, in der sich Definition für das ganze Buch befinden, wie Komponist, Titel usw. -
Eine
\score
-Umgebung. Die in ihr enthaltene Partitur wird zusammen mit anderen vorkommenden\score
-Umgebungen gesammelt und in ein\book
zusammengefasst. Dieses Verhalten kann verändert werden, indem die Variabletoplevel-score-handler
auf höchster Ebene gesetzt wird. Die Definition des Standards findet sich in der Datei ‘../scm/lily.scm’. -
Eine
\book
-Umgebung fasst mehrere Sätze (d. h. mehrere\score
-Umgebungen) logisch in ein Dokument zusammen. Wenn mehrere\score
-Partituren vorkommen, wird für jede\book
-Umgebung eine eigene Ausgabedatei erstellt, in der alle in der Umgebung enthaltenen Partituren zusammengefasst sind. Der einzige Grund, explizit eine\book
-Umgebung zu setzen, ist, wenn mehrere Ausgabedateien aus einer einzigen Quelldatei erstellt werden sollen. Eine Ausnahme sind lilypond-book-Dokumente, in denen eine\book
-Umgebung explizit hinzugefügt werden muss, wenn mehr als eine\score
- oder\markup
-Umgebung im gleichen Beispiel angezeigt werden soll. Dieses Verhalten kann verändert werden, indem die Variabletoplevel-book-handler
auf höchster Ebene gesetzt wird. Die Definition des Standards findet sich in der Datei ‘../scm/lily.scm’. -
Eine
\bookpart
-Umgebung. Ein Buch (\book
) kann in mehrere Teile untergliedert sein, indem\bookpart
-Umgebungen eingesetzt werden. Jeder Buchabschnitt beginnt auf einer neuen Seite und kann eigene Papierdefinitionen in einer\paper
-Umgebung haben. -
Ein zusammengesetzter musikalischer Ausdruck wie etwa
{ c'4 d' e'2 }
Dieses Beispiel wird von LilyPond automatisch in einer
\score
-Umgebung in einem Buch interpretiert und mit anderen\score
-Umgebungen und musikalischen Ausdrücken auf der höchsten Ebene zusammen ausgegeben. Anders gesagt: eine Datei, die nur das obige Beispiel beinhaltet, wird übersetzt zu\book { \score { \new Staff { \new Voice { { c'4 d' e'2 } } } } \layout { } \header { } }
Dieses Verhalten kann verändert werden, indem die Variable
toplevel-music-handler
auf der oberseten Ebene gesetzt wird. Die Definition des Standards findet sich in der Datei ‘../scm/lily.scm’. -
Eine Textbeschriftung, eine Strophe etwa:
\markup { 2. Die erste Zeile der zweiten Strophe. }
Textbeschriftungen werden über, zwischen oder unter musikalischen Ausdrücken gesetzt, so wie sie notiert werde.
-
Eine Variable, wie
foo = { c4 d e d }
Sie kann dann später in der Datei eingesetzt werden, indem
\foo
geschrieben wird. Die Beizeichnung der Variable darf nur aus alphabetischen Zeichen bestehen, keine Zahlen, Unter- oder Bindestriche.
Das folgende Beispiel zeigt drei Dinge, die auf der obersten Ebene notiert werden können:
\layout { % Zeilen rechtsbündig setzen ragged-right = ##t } \header { title = "Do-re-mi" } { c'4 d' e2 }
An einer beliebigen Stelle der Datei kann jede der folgenden lexikalen Anweisungen notiert werden:
-
\version
-
\include
-
\sourcefilename
-
\sourcefileline
-
Ein einzeiliger Kommentar, beginnend mit
%
. -
Ein mehrzeiliger Kommentar, umgeben von
%{ .. %}
.
See also
Hanbuch zum Lernen: How LilyPond input files work.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < File structure ] | [ Nach oben : General input and output ] | [ Creating titles > ] |
3.2 Titles and headers
Fast alle gedruckten Noten beinhalten einen Titel und den Namen des Komponisten, teilweise wird auch noch sehr viel mehr Information zur Verfügung gestellt.
3.2.1 Creating titles | ||
3.2.2 Custom titles | ||
3.2.3 Reference to page numbers | ||
3.2.4 Table of contents |
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Titles and headers ] | [ Nach oben : Titles and headers ] | [ Custom titles > ] |
3.2.1 Creating titles
Überschriften können für jede \score
-Umgebung erstellt werden, sowohl
für die gesamte Datei (oder eine \book
-Umgebung) als auch für
einzelne Buchabschnitte (innerhalb einer \bookpart
-Umgebung).
Der Inhalt der Titelei wird aus der \header
-Umgebung übernommen. Die
\header
-Umgebung eines Buches unterstützt folgende Felder:
-
dedication
Die Widmung der Noten, wird auf oben auf der ersten Seite gesetzt.
-
title
Die Überschrift der Noten, wird unter der Widmung zentriert gesetzt.
-
subtitle
Untertitel, zentriert unter der Überschrift.
-
subsubtitle
Unteruntertitel, zentriert unter dem Untertitel.
-
poet
Name des Dichters, linksbündig unter dem Unteruntertitel.
-
instrument
Bezeichnung des Instruments, zentriert unter dem Unteruntertitel. Auch oben auf der Seite zentriert (andere als erste Seite).
-
composer
Name des Komponisten, rechtsbüngig unter dem Unteruntertitel.
-
meter
Metrum, linksbündig unter dem Dichter.
-
arranger
Name des Bearbeiters/Arrangeurs, rechtsbündig unter dem Komponisten.
-
piece
Bezeichnung des Stückes, linksbündig unter dem Metrum.
-
opus
Bezeichnung des Opus, rechtsbündig unter dem Bearbeiter.
-
breakbefore
Hiermit beginnt der Titel auf einer neuen Steite. (Kann die Werte ##t (wahr) oder ##f (falsch) haben.)
-
copyright
Anzeige eines Copyright, zentriert unten auf der ersten Seite. Um das Copyright-Symbol zu notieren, siehe Text encoding.
-
tagline
Zentriert unten auf der letzten Seite. Enthält standardmäßig: „Music engraving by LilyPond (version)—www.lilypond.org“
Hier eine Demonstration der möglichen Felder. Beliebige Formatierungsbefehle für Textbeschriftung können in der Titelei eingesetzt werden. Siehe hierzu auch Formatting text.
\paper { line-width = 9.0\cm paper-height = 10.0\cm } \book { \header { dedication = "mir gewidmet" title = \markup \center-column { "Titel erste Zeile" "Titel zweite Zeile, länger" } subtitle = "Untertitel" subsubtitle = #(string-append "Unteruntertitel LilyPond-Version " (lilypond-version)) poet = "Dichter" composer = \markup \center-column { "Komponist" \small "(1847-1973)" } texttranslator = "Übersetzer" meter = \markup { \teeny "m" \tiny "e" \normalsize "t" \large "r" \huge "um" } arranger = \markup { \fontsize #8.5 "Be" \fontsize #2.5 "ar" \fontsize #-2.5 "be" \fontsize #-5.3 "i" \fontsize #7.5 "ter" } instrument = \markup \bold \italic "Instrument" piece = "Stück" } \score { { c'1 } \header { piece = "Stück zwei" opus = "Opus1" } } \markup { und jetzt... } \score { { c'1 } \header { piece = "Stück2" opus = "Opus2" } } }
Wie schon oben gezeigt, können mehrfache \header
-Umgebungen
eingesetzt werden. Wenn das gleiche Feld in mehreren
Umgebungen, wird die letzte vorkommende
Version benutzt. Hier ein kurzes Beispiel:
\header { composer = "Komponist" } \header { piece = "Stück" } \score { \new Staff { c'4 } \header { piece = "Neues Stück" % überschreibt die die vorige Definition } }
Wenn \header
innerhalb der \score
-Umgebung definiert wird,
wird normalerweise nur die Information von piece
und opus
ausgegeben. Musikalische Ausdrücke innerhalb von \score
müssen
vor \header
gesetzt werden.
\score { { c'4 } \header { title = "title" % not printed piece = "piece" opus = "opus" } }
Dieses Verhalten kann verändert werden (sodass alle Angaben aus der
überschrift gesetzt werden, wenn sich \header
innerhalb von
\score
befindet), indem man schreibt:
\paper{ print-all-headers = ##t }
Die Standardfußzeile ist leer mit Ausnahme der ersten Seite, auf der
das copyright
-Feld aus der \header
-Umgebung eingefügt wird,
und die letzte Seite, auf der das tagline
-Feld eingefügt wird.
Der Standardinhalt von tagline
ist „Music engraving by
LilyPond (version)—www.lilypond.org“. Gut gesetzte Noten werben sehr effektiv
für LilyPond, darum bitten wir darum, diese Zeile stehen zu lassen,
wenn es möglich ist.
Ein Titelfeld kann vollständig entfernt werden, indem es auf falsch gesetzt wird:
\header { tagline = ##f composer = ##f }
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Creating titles ] | [ Nach oben : Titles and headers ] | [ Reference to page numbers > ] |
3.2.2 Custom titles
Kompliziertere Anpassungen können vorgenommen werden, indem die
folgenden Variablen innerhalb der \paper
-Umgebung geändert
werden. Die Init-Datei ‘../ly/titling-init.ly’ enthält das
Standardverhalten.
-
bookTitleMarkup
Das ist die Überschrift, die für das gesamte Dokument gilt. Üblicherweise wird hier der Komponist und die Überschrift des Werkes genannt.
-
scoreTitleMarkup
Das ist die Überschrift, die vor jede
\score
-Umgebung gesetzt wird. Überlicherweise wird hier etwa die Bezeichnung eines Satzes notiert (impiece
-Feld).-
oddHeaderMarkup
Das ist der Seitenkopf für ungerade Seiten.
-
evenHeaderMarkup
Das ist der Seitenkopf für gerade Seiten. Wenn undefiniert, wird der ungerade Seitenkopf eingesetzt.
Standardmäßig werden die Kopfzeilen so definiert, dass die Seitennummer sich außen befindet und das Instrument zentriert gesetzt wird.
-
oddFooterMarkup
Das ist die Fußzeile für ungerade Seiten.
-
evenFooterMarkup
Das ist die Fußzeile für gerade Seiten. Wenn undefiniert, wird die ungerade Fußzeile eingesetzt.
Standardmäßig wird in der Fußzeile auf der ersten Seite das Copyright und auf der letzten Seite die Tag-Zeile gesetzt.
Die folgende Definition setzt die Überschrift linksbündig und den Komponisten rechtsbündig auf einer einzelnen Zeile:
\paper { bookTitleMarkup = \markup { \fill-line { \fromproperty #'header:title \fromproperty #'header:composer } } }
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Custom titles ] | [ Nach oben : Titles and headers ] | [ Table of contents > ] |
3.2.3 Reference to page numbers
Eine bestimmte Stelle der Partitur kann mit einem \label
-Befehl
markiert werden, sowohl auf oberster Ebene als auch innerhalb eines
musikalischen Ausdrucks. Auf diese Marke kann dann verwiesen werden,
um die Seitenzahl zu erhalten, auf der die Marke vorkommt. Der
Verweis wird mit dem Befehl \page-ref
gefordert (innerhalb
von \markup
).
\header { tagline = ##f } \book { \label #'ErstePartitur \score { { c'1 \pageBreak \mark A \label #'ZeichenA c' } } \markup { Die erste Partitur fäng auf Seite \page-ref #'ErstePartitur "0" "?" an.} \markup { Zeichen A befindet sich auf Seite \page-ref #'ZeichenA "0" "?". } }
Der \page-ref
-Textbeschriftungsbefehl braucht drei Argumente:
- die Marke, ein Scheme-Symbol, etwa
#'ErstePartitur
, - eine Beschriftung, die als Platzhalter benutzt wird, um die Breite des Verweisen zu schätzen,
- eine Beschriftung, die anstelle der Seitenzahl gesetzt wird, wenn die Marke unbekann ist.
Der Grund, warum ein Platzhalter benötigt wird, ist dass zu dem Zeitpunkt, an dem die Textbeschriftungen ausgewertet werden, noch keine Seitenumbrüche vorgenommen wurden und die Seitenzahlen deshalb noch nicht bekannt sind. Um hier ein Problem zu vermeiden, wird die eigentliche Auswertung der Textbeschriftung erst später ausgeführt, die Größe des Textes muss aber schon vorher bekannt sein. Die Größe wird mithilfe des Platzhalters bestimmt. Wenn eine Partitur zwischen 10 und 99 Seiten hat, kann man "00" schreiben, also eine zweistellige Zahl.
\label
\page-ref
Predefined commands
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Reference to page numbers ] | [ Nach oben : Titles and headers ] | [ Working with input files > ] |
3.2.4 Table of contents
Ein Inhaltsverzeichnis kann eingefügt werden mit dem Befehl
\markuplines \table-of-contents
. Die Elemente, die im
Inhaltsverzeichnis aufgelistet werden sollen, werden mit dem
\tocItem
-Befehl markiert, welches sowohl auf höchster
Ebene als auch in einem musikalischen Ausdruck verwendet werden
kann.
\markuplines \table-of-contents \pageBreak \tocItem \markup "Erste Partitur" \score { { c' % ... \tocItem \markup "Ein bestimmter Punkt innerhalb der ersten Partitur" d' % ... } } \tocItem \markup "zweite Partitur" \score { { e' % ... } }
Die Beschriftungen, die benutzt werden um das Inhaltsverzeichnis
zu formatieren, sind in der \paper
-Umgebung definiert.
Die Standardformatierungselemente sind tocTitleMarkup
um die Überschrift zu formatieren und tocItemMarkup
um
die einzelnen Inhaltselemente zu formatieren, bestehend aus
dem Titelelement und einer Seitenzahl. Die Variablen können
durch den Benutzer geändert werden:
\paper { %% Übersetzung der Inhaltsverzeichnisüberschrift nach französisch: tocTitleMarkup = \markup \huge \column { \fill-line { \null "Table des matières" \null } \hspace #1 } %% hier größere Schriftarten tocItemMarkup = \markup \large \fill-line { \fromproperty #'toc:text \fromproperty #'toc:page } }
Die Inhaltsverzeichniselemente Text und Seitenzahl werden
in der Definition von tocItemMarkup
aufgerufen mit
#'toc:text
und #'toc:page
.
Neue Befehle und Beschriftungen können auch definiert werden, um eigene Inhaltsverzeichnisse zu gestalten:
- zuerst muss eine neue Beschriftungsvariable in der
\paper
-Umgebung definiert werden - dann muss die musikalische Funktion definiert werden, die ein Element zum Inhaltsverzeichnis hinzufügt, indem die neue Variable benutzt wird.
Das folgende Beispiel definiert einen neuen Stil um Akt-Bezeichnungen einer Oper in das Inhaltsverzeichnis aufzunehmen:
\paper { tocActMarkup = \markup \large \column { \hspace #1 \fill-line { \null \italic \fromproperty #'toc:text \null } \hspace #1 } } tocAct = #(define-music-function (parser location text) (markup?) (add-toc-item! 'tocActMarkup text))
See also
Installierte Dateien: ‘../ly/toc-init.ly’.
Predefined commands
\table-of-contents
,
\tocItem
.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Table of contents ] | [ Nach oben : General input and output ] | [ Including LilyPond files > ] |
3.3 Working with input files
3.3.1 Including LilyPond files | ||
3.3.2 Different editions from one source | ||
3.3.3 Text encoding | ||
3.3.4 Displaying LilyPond notation |
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Working with input files ] | [ Nach oben : Working with input files ] | [ Different editions from one source > ] |
3.3.1 Including LilyPond files
Ein größeres Projekt kann in einzelne Dateien aufteteilt werden. Um eine andere Datei einzubinden, kann der Befehl
\include "andereDatei.ly"
benutzt werden.
Die Zeile \include "andereDatei.ly"
benimmt sich genauso,
also ob der Inhalt der Datei andereDatei.ly
komplett in die
Hauptdatei eingefügt werden würde. So kann man für ein größeres
Projekt die einzelnen Stimmen der Instrumente getrennt notieren
und sie dann in einer Partitur-Datei benutzen. Meistens werden
in den eingefügten Dateien einige Variablen definiert, die dann
auch in der Hauptdatei eingesetzt werden können. Mit Marken (Tags)
gekennzeichnete Abschnitte können eingesetzt werden, um die
entsprechenden Noten etc. an verschiedenen Stellen in der Datei
zur Verfügung zu stellen. Siehe auch Different editions from one source.
Auf Dateien im aktuellen Verzeichnis kann einfach mit dem Dateinamen
nach dem \include
-Befehl verwiesen werden. Dateien an anderen
Stellen können eingebunden werden, indem entweder ein vollständiger
Pfad oder ein relativer Pfad zu der Datei angegeben wird. Hierbei
sollten die für UNIX typischen Schrägstriche (/) und nicht die
rückwärtsgeneigten von Windows (\) verwendet werden, um die Verzeichnisse
zu trennen. Wenn etwa die Datei ‘kram.ly’ ein Verzeichnis
höher liegt als das aktuelle Verzeichnis, sollte der Befehl so
aussehen:
\include "../kram.ly"
Wenn die Orchesterstimmen andererseits in einem Unterordner mit
der Bezeichnung stimmen
liegen, sieht er folgendermaßen
aus:
\include "stimmen/VI.ly" \include "stimmen/VII.ly" ... etc
Dateien, die eingebunden werden sollen, können selber auch wiederum
ein \include
enthalten. Diese Einbindung zweiter Ebene
werden erst interpretiert, wenn sie sich in der Hauptdatei befinden,
sodass die Pfadangaben hier nicht relativ zur eingebundenen Datei,
sondern relativ zur Hauptdatei gesetzt werden müssen. Dieses Verhalten
kann jedoch auch verändert werden, indem man lilypond die Option
-drelative-includes
auf der Kommandozeile zuweist (oder indem
man den Befehl #(ly:set-option 'relative-includes #t)
an den
Beginn der Quelldatei schreibt). Mit relative-includes
wird
der Pfad jedes \include
-Befehls als relativ zu der Datei angenommen,
in der sich der Befehl befindet. Dieses Verhalten wird empfohlen und wird
in zukünftigen Versionen von LilyPond den Standard darstellen.
Dateien können auch aus einem Verzeichnis eingebunden werden, dass im Suchpfad von LilyPond liegt. Hierzu muss auf der Kommandozeile das entsprechende Verzeichnis angegeben werden und die Dateien, die eingebunden werden, müssen nur mit ihrem Namen notiert sein. Wenn etwa die Datei ‘Haupt.ly’ kompiliert werden soll, die Dateien aus dem Unterverzeichnis ‘stimmen’ einbindet, müssen sie sich im Verzeichnis von ‘Haupt.ly’ befinden und dann LilyPond folgendermaßen aufrufen:
lilypond --include=stimmen Haupt.ly
In ‘Haupt.ly’ steht:
\include "VI.ly" \include "VII.ly" ... usw.
Dateien, die in vielen Partituren verwendet werden sollen, können im LilyPond-Verzeichnis ‘../ly’ gespeichert werden. (Die Stelle, an der dieses Verzeichnis sich befindet, hängt vom Betriebssystem ab, siehe hierzu Other sources of information). Dateien in diesem Verzeichnis können einfach mit ihrem Namen eingefügt werden. So werden auch die Sprachdateien wie etwa ‘deutsch.ly’ eingefügt.
LilyPond lädt eine Anzahl an Dateien, wenn das Programm aufgerufen wird.
Diese Dateien sind für den Benutzer nicht ersichtlich, aber die Dateien
können identifiziert werden, indem LilyPond auf der Komandozeile mit
Option aufgerufen wird: lilypond --verbose
. Hiermit wird
neben anderer Information auch eine Liste and Pfaden und Dateien
aufgeführt, die LilyPond benutzt. Die wichtigeren Dateien werden
im Abschnitt
Other sources of information besprochen.
Diese Dateien können verändert werden, aber Änderungen gehen verloren,
wenn eine neue LilyPond-Version installiert wird.
Eine einfache Beispiele, die die Benutzung von \include
demonstrieren,
sind dargestellt in
Scores and parts.
See also
Handbuch zum Lernen: Other sources of information, Scores and parts.
Known issues and warnings
Wenn eine Datei eingebunden wird, deren Name einer Datei aus dem Installationsverzeichnis von LilyPond entspricht, wird die installierte Datei anstelle der eigenen verwendet.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Including LilyPond files ] | [ Nach oben : Working with input files ] | [ Using variables > ] |
3.3.2 Different editions from one source
Es gibt verschiedene Funktionen, die es möglich machen, unterschiedliche Versionen einer Partitur aus der gleichen Quelldatei zu produzieren. Variablen werden am besten eingesetzt, wenn es darum geht, längere Notenpassagen und/oder Anmerkungen/Textmarken miteinander auf verschiedene Weise zu kombinieren. Tag-Marken dagegen werden am besten eingesetzt, wenn eine von mehreren kurzen alternativen Notenabschnitten ausgewählt werden soll. Egal welche Methode am Ende eingesetzt wird: Es erleichtert die Arbeit in jedem Fall, wenn die eigentlichen Noten und die Struktur der Paritur voneinander getrennt notiert werden – so kann die Struktur geändert werden, ohne dass man Änderungen an den Noten vornehmen muss.
Using variables | ||
Using tags |
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Different editions from one source ] | [ Nach oben : Different editions from one source ] | [ Using tags > ] |
Using variables
Wenn Notenabschnitt in Variablen definiert werden, können sie an unterschiedlichen Stellen in der Partitur eingesetzt werden, siehe auch Organizing pieces with variables. Zum Beispiel enthält eine Vokalpartitur für ein a cappella Stück oft einen Klavierauszug, der das Einüben einfacher macht. Der Klavierauszug enthält die gleichen Noten, sodass man sie nur einmal notieren muss. Noten aus zwei Variablen können auf einem System kombiniert werden, siehe Automatic part combining. Hier ein Beispiel:
sopranoMusic = \relative c'' { a4 b c b8( a)} altoMusic = \relative g' { e4 e e f } tenorMusic = \relative c' { c4 b e d8( c) } bassMusic = \relative c' { a4 gis a d, } allLyrics = \lyricmode {King of glo -- ry } << \new Staff = "Soprano" \sopranoMusic \new Lyrics \allLyrics \new Staff = "Alto" \altoMusic \new Lyrics \allLyrics \new Staff = "Tenor" { \clef "treble_8" \tenorMusic } \new Lyrics \allLyrics \new Staff = "Bass" { \clef "bass" \bassMusic } \new Lyrics \allLyrics \new PianoStaff << \new Staff = "RH" { \set Staff.printPartCombineTexts = ##f \partcombine \sopranoMusic \altoMusic } \new Staff = "LH" { \set Staff.printPartCombineTexts = ##f \clef "bass" \partcombine \tenorMusic \bassMusic } >> >>
Unterschiedliche Partituren, die entweder nur den Chor oder das Klavier zeigen, können produziert werden, indem die Struktur verändert wird; die Noten müssen dazu nicht verändert werden.
Für längere Partituren können Variablen in eigene Dateien notiert werden, die dann eingebunden werden, siehe Including LilyPond files.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Using variables ] | [ Nach oben : Different editions from one source ] | [ Text encoding > ] |
Using tags
Der \tag #'TeilA
-Befehl markiert einen musikalischen
Ausdruck mit der Bezeichnung TeilA. Ausdrücke, die auf diese
Weise markiert werden, können mit ihrer Bezeichnung später ausgewählt
bzw. ausgefiltert werden. Das geschieht mit den Befehlen
\keepWithTag #'Bezeichnung
bzw. \removeWithTag #'Bezeichnung
.
Die Wirkung dieser Filter auf die markierten Notenabschnitte ist
wie folgt:
Filter | Resultat |
---|---|
Markierte Noten mit vorgesetztem | Unmarkierte Noten und Noten mit der Marke Bezeichnung werden gesetzt, Noten mit einer anderen Marke werden nicht angezeigt. |
Markierte Noten mit vorgesetztem | Unmarkierte Noten und Noten mit einer anderen Marke als Bezeichnung wird angezeigt, Noten markiert mit Bezeichnung werden nicht angezeigt. |
Markierte Noten, weder mit vorgesetztem | Alle markierten und unmarkierten Noten werden angezeigt. |
Die Argumente der Befehle \tag
, \keepWithTag
und
\removeWithTag
sollten ein Symbol sein (wie etwa
#'score
oder #'part
), gefolgt von einem musikalischen
Ausdruck.
Im folgenden Beispiel erscheinen zwei Versionen der Noten, eine zeigt Triller in normaler Notation, die andere zeigt sie ausgeschrieben:
music = \relative g' { g8. c32 d \tag #'trills {d8.\trill } \tag #'expand {\repeat unfold 3 {e32 d} } c32 d } \score { \keepWithTag #'trills \music } \score { \keepWithTag #'expand \music }
Entsprechend können auch Abschnitte ausgeschlossen werden; das erfordert manchmal weniger Schreibarbeit:
music = \relative g' { g8. c32 d \tag #'trills {d8.\trill } \tag #'expand {\repeat unfold 3 {e32 d} } c32 d } \score { \removeWithTag #'expand \music } \score { \removeWithTag #'trills \music }
Marken können auch auf Artikulationen, Text usw angewendet werden, indem man ihnen
-\tag #'your-tag
voranstellt (jedoch nach der Note, an die sie gebunden sind). Mit diesem Code etwa könnte man entweder Fingersatz oder aber einen Text ausgeben:
c1-\tag #'finger ^4 c1-\tag #'warn ^"Achtung!"
Mehrfache Marken können mithilfe von mehreren \tag
-Befehlen
notiert werden:
music = \relative c'' { \tag #'a \tag #'both { a a a a } \tag #'b \tag #'both { b b b b } } << \keepWithTag #'a \music \keepWithTag #'b \music \keepWithTag #'both \music >>
Mehrfache \removeWithTag
-Filter können auf einen
musikalischen Ausdruck angewendet werden, um mehrere unterschiedliche
markierte Abschnitte aus dem Druckbild zu entfernen.
music = \relative c'' { \tag #'A { a a a a } \tag #'B { b b b b } \tag #'C { c c c c } \tag #'D { d d d d } } { \removeWithTag #'B \removeWithTag #'C \music }
Zwei oder mehr \keepWithTag
-Filter in einem musikalischen
Ausdruck bewirken, dass alle markierten Abschnitte entfernt
werden, weil der erste Befehl alle markierten Abschnitt außer dem
im Befehl genannten wegfiltert und der zweite Befehl dann auch diesen
eben genannten zusätzlich entfernt.
See also
Handbuch zum Lernen: Organizing pieces with variables.
Notationsreferenz: Automatic part combining, Including LilyPond files.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Using tags ] | [ Nach oben : Working with input files ] | [ Displaying LilyPond notation > ] |
3.3.3 Text encoding
LilyPond benutzt alle Zeichen, die durch das Unicode-Konsortium und ISO/IEC 10646 definiert sind. Hiermit wird den Zeichen fast aller Schriftsysteme der Welt ein eindeutiger Name und ein Code-Punkt zugewiesen, mit dem sie identifizierbar sind. Unicode kann mit mehreren Zeichenkodierungen verwirklicht werden. LilyPond benutzt die UTF-8-Kodierung (UTF = Unicode Transformation Format), in der die normalen Zeichen des lateinischen Alphabets mit einem Byte dargestellt werden, während alle anderen Zeichen zwischen zwei und vier Byte Länge haben.
Das Aussehen des Zeichens wird bestimmt durch die gerade benutzte Schriftart (engl. font). In einer Schriftartdatei werden die Nummern der Unicode-Zeichen einem bestimmten Glyphen zugeordnet. LilyPond verwendet die Pango-Bibliothek um mehrsprachige Texte und komplexe Skripte korrekt zu setzen.
LilyPond verändert die Kodierung der Eingabedatei nicht. Das heißt, dass jeder Text – Überschriften, Gesangstext, Spielanweisungen etc. – der nicht nur aus ASCII-Zeichen besteht, in UTF-8 kodiert sein musst. Am einfachsten geht das, indem man einen Texteditor einsetzt, der mit Unicode-Zeichen umgehen kann. Die meisten modernen weit verbreiteten Editoren besitzen heute UTF-8-Unterstützung, wie etwa vim, Emacs, jEdit oder GEdit. Alle MS Windows-Systeme nach NT benutzen Unicode intern, sodass sogar Notepad Dateien in UTF-8 lesen und speichern kann. Ein Editor mit mehr Funktionen unter Windows ist BabelPad oder Notepad++.
Wenn eine LilyPond-Eingabedatei nicht-ASCII-Zeichen enthält und nicht in UTF-8 gespeichert ist, gibt es folgende Fehlermeldung:
FT_Get_Glyph_Name () error: invalid argument
Heir ein Beispiel mit Kyrilliza, hebräischem und portugiesischem Text:
Um einen einzelnen Buchstaben zu notieren, für den die Unicode-Buchstabenfolge
bekannt ist, der aber nicht auf der Tastatur zu finden ist, kann
der Befehl \char ##xhhhh
innerhalb einer \markup
-Umgebung
benutzt werden. Hierbei bedeutet hhhh
die hexadezimale Zahl
für das erforderliche Zeichen. Mit \char ##x03BE
wird
beispielsweise das Unicode-Zeichen U+03BE notiert, welches die
Unicode-Bezeichnung „Greek Small Letter Xi“ hat. Alle existierenden
Unicode-Zeichen können auf diese Weise notiert werden, und wenn für alle
Zeichen dieses Format angewandt wird, muss die Datei nicht im utf-8-Format
gespeichert werden. Es muss natürlich auch noch eine Schriftart auf
dem System installiert sein, die die notierten Zeichen darstellen kann.
Das nächste Beispiel zeigt Unicode-Zeichen an vier Stellen mit dem Zahlencode notiert: in einem Übungszeichen, als Artikulationszeichen, im Gesangstext und als normaler Text außerhalb der Partitur.
\score { \relative c'' { c1 \mark \markup { \char ##x03EE } c1_\markup { \tiny { \char ##x03B1 " to " \char ##x03C9 } } } \addlyrics { O \markup { \concat{ Ph \char ##x0153 be! } } } } \markup { "Copyright 2008--2009" \char ##x00A9 }
Um das Copyright-Zeichen zu notieren, kann folgender Code eingesetzt werden:
\header { copyright = \markup { \char ##x00A9 "2008" } }
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Text encoding ] | [ Nach oben : Working with input files ] | [ Controlling output > ] |
3.3.4 Displaying LilyPond notation
Ein musikalischer Ausdruck in LilyPond-Notation kann mit der Funktion
\displayMusic
angezeigt werden. Der Code
{ \displayLilyMusic \transpose c a, { c e g a bes } }
etwa wird ausgeben:
{ a, cis e fis g }
Normalerweise werden diese Zeilen zusammen mit allen anderen
Nachrichten auf der Kommandozeile ausgegeben. Um sie separat zu
speichern und das Ergebnis von \displayMusic
weiterzubenutzen,
kann die Ausgabe mit folgendem Befehl in eine Datei umgeleitet werden:
lilypond file.ly >display.txt
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Displaying LilyPond notation ] | [ Nach oben : General input and output ] | [ Extracting fragments of music > ] |
3.4 Controlling output
3.4.1 Extracting fragments of music | ||
3.4.2 Skipping corrected music |
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Controlling output ] | [ Nach oben : Controlling output ] | [ Skipping corrected music > ] |
3.4.1 Extracting fragments of music
Es ist möglich, kleine Abschnitte einer großen Partitur direkt aus der Quelldatei zu erzeugen. Das kann damit verglichen werden, dass man mit der Schere bestimmte Regionen ausschneidet.
Es wird erreicht, indem man die Takte, die ausgeschnitten werden sollen (engl. to clip = ausschneiden), extra definiert. Mit folgender Defintion beispielsweise
\layout { clip-regions = #(list (cons (make-rhythmic-location 5 1 2) (make-rhythmic-location 7 3 4))) }
wird ein Fragment ausgeschnitten, dass auf der Mitte des fünften Taktes
beginnt und im siebten Takt endet. Die Bedeutung von 5 1 2
ist:
nach einer Halben in Takt fünf, 7 3 4
heißt: nach drei Vierteln
in Takt 7.
Weitere Bereiche, die ausgeschnitten werden sollen, können definiert werden, indem mehrere derartige Paare definiert werden.
Um diese Funktion auch nutzen zu können, muss LilyPond mit dem
Parameter -dclip-systems
aufgerufen werden. Die Schnipsel
werden als EPS ausgegeben und dann zu PDF und PNG konvertiert, wenn
diese Formate auch als Parameter angegeben werden.
Zu mehr Information über Ausgabeformate siehe Invoking lilypond.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Extracting fragments of music ] | [ Nach oben : Controlling output ] | [ MIDI output > ] |
3.4.2 Skipping corrected music
Wenn man Noten eingibt oder kopiert, sind meistens nur die Noten nahe dem Ende (wo gerade neue Noten notiert wurden) wichtig für Kontrolle und Korrektur. Um die Korrektur zu beschleunigen, kann eingestellt werden, dass nur die letzten paar Takte angezeigt werden. Das erreicht man mit dem Befehl
showLastLength = R1*5 \score { ... }
in der Quelldatei. Damit werden nur die letzten fünf Takte (in einem
4/4-Takt) eines jeden \score
-Abschnitts übersetzt. Besonders
bei längeren Stücken ist es meistens sehr viel schneller, nur einen
kleinen Teil des Stückes zu setzen als die gesamte Länge. Wenn man
am Anfang eines Stückes arbeitet (weil etwa ein neuer Teil hinzugefügt
werden soll), kann auch die showFirstLength
-Eigenschaft
nützlich sein.
Nur bestimmte Teile einer Partitur zu überspringen, kann mit der
Eigenschaft Score.skipTypesetting
sehr genau kontrolliert
werden. Für den Bereich, für den sie auf „wahr“ gesetzt wird,
wird kein Notensatz ausgegeben.
Diese Eigenschaft kann auch benutzt werden, um die MIDI-Ausgabe zu kontrollieren. Hiermit werden alle Ereignisse, auch Tempo- und Instrumentenwechsel ausgelassen. Man muss also sehr genau darauf achten, dass nichts unerwartetes geschieht.
\relative c'' { c8 d \set Score.skipTypesetting = ##t e e e e e e e e \set Score.skipTypesetting = ##f c d b bes a g c2 }
In polyphoner Notation wirkt sich Score.skipTypesetting
auf
alle Stimmen und Systeme aus, sodass noch mehr Zeit bei der
Übersetzung der Datei gespart wird.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Skipping corrected music ] | [ Nach oben : General input and output ] | [ Creating MIDI files > ] |
3.5 MIDI output
MIDI (Musical Instrument Digital Interface) ist ein Standard zur Kontrolle und Interaktion mit digitalen Instrumenten. Eine MIDI-Datei ist eine Anzahl von Noten auf einer Anzahl von Bändern/Stimmen. Es ist keine eigentliche Klangdatei, denn man benötigt spezielle Programme die die Notenereignisse in Klang umwandeln können.
Der Notensatz von LilyPond kann in MIDI umgewandelt werden, so dass man sich anhören kann, was man notiert hat. Das hilft oft sehr gut bei der Überprüfung: falsche Oktaven oder falsche Versetzungszeichen lassen sich meist sehr gut hören.
Die MIDI-Ausgabe benötigt einen Kanal für jedes System und einen für globale Einstellungen. Darum sollte die Quelldatei für eine MIDI-Datei nicht mehr als 15 Systeme (oder 14 wenn kein Schlagzeug benützt wird) besitzen. Jedes weitere System bleibt stumm.
3.5.1 Creating MIDI files | ||
3.5.2 MIDI block | ||
3.5.3 What goes into the MIDI output? | ||
3.5.4 Repeats in MIDI | ||
3.5.5 Controlling MIDI dynamics | ||
3.5.6 Percussion in MIDI |
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < MIDI output ] | [ Nach oben : MIDI output ] | [ > ] |
3.5.1 Creating MIDI files
Um eine MIDI-Datei aus einer LilyPond-Quelldatei zu erstellen, muss
eine \midi
-Umgebung zu der \score
-Umgebung hinzugefügt
werden, etwa so:
\score { ...Noten... \midi { } }
Wenn in einer \score
-Umgebung nur eine \midi
-Umgebung,
aber keine \layout
-Umgebung vorkommt, wird nur MIDI produziert.
Wenn auch die Notation gewünscht ist, muss zusätzlich die
\layout
-Umgebung vorhanden sein:
\score { ...music... \midi { } \layout { } }
Tonhöhen, Rhythmen, Überbindungen, Dynamik und Tempoänderungen werden korrekt in das MIDI-Format übersetzt. Dynamikzeichen, Crescendo und Decrescendo werden in den MIDI-Lautstärkekanal übertragen. Dynamikzeichen werden in einen bestimmten Lautstärkenwert übersetzt, Crescendo und Decrescendo erreichen einen Übergang zwischen Lautstärkewerten. Die Wirkung von Dynamikzeichen kann auch aus der MIDI-Datei entfernt werden. Siehe hierzu MIDI block.
Das Anfangstempo und spätere Tempoänderungen können mit dem
\tempo
-Befehl innerhalb der Notation notiert werden. Er
bewirkt Tempoänderungen auch in der MIDI-Datei. Der Befehl setzt
gleichzeitig auch eine Tempobezeichnung in die Noten, welches aber
auch unterdrückt werden kann, siehe Metronome marks. Eine
andere möglichkeit, ein eigenes MIDI-Tempo anzugeben, wird weiter
unten gezeigt, siehe MIDI block.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Creating MIDI files ] | [ Nach oben : Creating MIDI files ] | [ MIDI block > ] |
Instrument names
Das MIDI-Instrument, mit dem ein bestimmtes System wiedergegeben
werden soll, wird durch die Staff.midiInstrument
-Eigenschaft
bestimmt, die auf eine Instrumentenbezeichnung gesetzt werden muss.
Die Bezeichnungen sind aufgelistet in MIDI instruments und müssen
in der dort definierten Schreibweise notiert werden.
\new Staff { \set Staff.midiInstrument = #"glockenspiel" ...Noten... }
\new Staff \with {midiInstrument = #"cello"} { ...Noten... }
Wenn die Schreibweise nicht genau einem definierten Instrument aus
der Liste entpsricht, wird ein Piano-Klang benutzt ("acoustic grand"
).
Selected Snippets
Changing MIDI output to one channel per voice
When outputting MIDI, the default behavior is for each staff to represent one MIDI channel, with all the voices on a staff amalgamated. This minimizes the risk of running out of MIDI channels, since there are only 16 available per track.
However, by moving the Staff_performer
to the Voice
context, each voice on a staff can have its own MIDI channel, as is
demonstrated by the following example: despite being on the same staff,
two MIDI channels are created, each with a different
midiInstrument
.
\score { \new Staff << \new Voice \relative c''' { \set midiInstrument = #"flute" \voiceOne \key g \major \time 2/2 r2 g-"Flute" ~ g fis ~ fis4 g8 fis e2 ~ e4 d8 cis d2 } \new Voice \relative c'' { \set midiInstrument = #"clarinet" \voiceTwo b1-"Clarinet" a2. b8 a g2. fis8 e fis2 r } >> \layout { } \midi { \context { \Staff \remove "Staff_performer" } \context { \Voice \consists "Staff_performer" } \context { \Score tempoWholesPerMinute = #(ly:make-moment 72 2) } } }
Known issues and warnings
Veränderungen der MIDI-Lautstärke sind nur effektiv, wenn sie zu Beginn einer Note angefordert werden, sodass die Lautstärke während einer Notendauer nicht geändert werden kann.
Nicht alle MIDI-Spieler können Tempoänderungen richtig wiedergeben. Spieler, die hierzu in der Lage sind, sind unter Anderen MS Windows Media Player und timidity.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < ] | [ Nach oben : MIDI output ] | [ What goes into the MIDI output? > ] |
3.5.2 MIDI block
Eine \midi
-Umgebung muss innerhalb von einer \score
-Umgebung
vorkommen, wenn MIDI-Ausgabe gewünscht ist. Sie entspricht der
\layout
-Umgebung, aber ist etwas einfacher aufgebaut. Oft wird
die MIDI-Umgebung einfach leer gelassen, aber hier können auch
Kontexte umgeändert werden, neue Kontexte definiert werden oder
neue Werte definiert werden. Das folgende Beispiel etwa definiert
das MIDI-Tempo, ohne dass in der Partitur eine Metronombezeichnung
gesetzt wird:
\score { ...Noten... \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 72 4) } } }
Hier wird das Tempo auf 72 Viertelnoten pro Minute definiert. Wenn das Tempo auf diese Weise definiert wird, kann keine punktierte Note als Einheit angegeben werden. Wenn sie benötigt wird, muss man sie in kleinere Einheiten auflösen. Ein Tempo von 90 punktierten Viertelnoten pro Minute kann beispielsweise dargestellt werden als 270 Achtelnoten pro Minute:
tempoWholesPerMinute = #(ly:make-moment 270 8)
Kontextdefinitionen des \midi
-Kontextes entsprechen
der Syntax, wie sie in der \layout
-Umgebung benutzt
wird. Klangübersetzungsmodule werden performer
genannt. Die Kontexte für die MIDI-Ausgabe sind in der
Datei ‘../ly/performer-init.ly’ definiert, siehe
Other sources of information. Um beispielsweise
die Auswirkung von Dynamikzeichen aus der MIDI-Ausgabe zu
entfernen, müssen folgende Zeilen eingefügt werden:
\midi { ... \context { \Voice \remove "Dynamic_performer" } }
Eine MIDI-Ausgabe wird nur erstellt, wenn die \midi
-Umgebung
in eine Partiturumgebung eingefügt wird, die mit dem Befehl
\score
beginnt. Wenn eine Partitur explizit etwa mit
\new Score
begonnen wird, und sich die MIDI-Umgebung hierin
befindet, wird keine Ausgabe produziert. Eine Lösung ist es, sowohl
die \new Score
- als auch die \midi
-Umgebungen in eine
\score
-Umgebung einzuschließen.
\score { \new Score { …Noten… } \midi { } }
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < MIDI block ] | [ Nach oben : MIDI output ] | [ > ] |
3.5.3 What goes into the MIDI output?
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < What goes into the MIDI output? ] | [ Nach oben : What goes into the MIDI output? ] | [ > ] |
Supported in MIDI
Die folgenden Notationselemente werden in die MIDI-Ausgabe aufgenommen:
- Tonhöhen
- Mikrotöne (siehe Accidentals. Für die Ausgabe wird ein Spieler benötigt, der Tonhöhen verändern kann.)
- Akkorde, die als Symbole notiert werden
- Rhythmen, die als Dauern notiert sind, inklusive N-tolen
- Tremolo, das ohne ‚
:
[Zahl]‘ notiert ist - Überbindungen
- Dynamikzeichen
- Crescendi, decrescendi zu mehreren Noten
- Tempoänderungen, die mit einer Tempo-Bezeichnung eingegeben werden
- Gesangstext
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < ] | [ Nach oben : What goes into the MIDI output? ] | [ Repeats in MIDI > ] |
Unsupported in MIDI
Folgende Notationselemente werden nicht in die MIDI-Ausgabe einbeozogen:
- Rhythmus, der als Anmerkung notiert wird, bspw. Swing
- Tempoveränderungen, die als Anmerkung ohne Tempobezeichnung notiert werden
- Staccato und andere Artikultationen und Ornamente
- Legato- und Phrasierungsbögen
- Crescendi, decrescendi zu einer einzelnen Note
- Tremolo, notiert mit ‚
:
[number]‘ - Bezifferter Bass
- Akkorde mit Mikrotönen
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < ] | [ Nach oben : MIDI output ] | [ Controlling MIDI dynamics > ] |
3.5.4 Repeats in MIDI
Mit einigen Veränderungungen im Notentext können alle Wiederholungstypen
auch in der MIDI-Ausgabe wiedergegeben werden. Das wird erreicht, indem
die \unfoldRepeats
-Funktion eingesetzt wird. Diese Funktion
verändert alle Wiederholungen in ausgeschriebene Noten.
\unfoldRepeats { \repeat tremolo 8 {c'32 e' } \repeat percent 2 { c''8 d'' } \repeat volta 2 {c'4 d' e' f'} \alternative { { g' a' a' g' } {f' e' d' c' } } } \bar "|."
Wenn eine Partitur mit diesem Befehl erstellt wird, ist er notwendig,
zwei \score
-Umgebungen einzurichten: in der einen werden die
Wiederholungen ausgeschrieben und nur eine MIDI-Ausgabe produziert,
in der anderen werden die Wiederholungen notiert und als Partitur
gesetzt. Das Beispiel gibt einen Hinweis, wie eine derartige Datei
aussehen kann:
\score { ..music.. \layout { .. } } \score { \unfoldRepeats ..music.. \midi { .. } }
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Repeats in MIDI ] | [ Nach oben : MIDI output ] | [ > ] |
3.5.5 Controlling MIDI dynamics
Dynamik in der MIDI-Ausgabe wird durch den Dynamic_performer
erstellt, welcher sich in einem Voice
-Kontext befindet.
Es ist möglich, sowohl die generelle Lautstärke einer MIDI-Datei
als auch relative Lautstärken von Dynamikanweisungen und auch
relative Lautstärke von einzelnen Instrumenten einzustellen.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < Controlling MIDI dynamics ] | [ Nach oben : Controlling MIDI dynamics ] | [ > ] |
Dynamic marks
Dynamikanweisungen werden als ein bestimmter Bruch der insgesamt
zur Verfügung stehenden MIDI-Lautstärke notiert. Die Standardbrüche
reichen von 0,25 für ppppp bis hin zu 0,95 für
fffff. Diese Anweisung befinden sich in der Datei
‘../scm/midi.scm’, siehe auch
Other sources of information.
Diese Brüche können nach Belieben geändert oder erweitert werden, indem
eine Funktion erstellt wird, die ein Dynamikzeichen als Argument
nimmt und den erforderlichen Bruch ausgibt; schließlich muss noch
Score.dynamicAbsoluteVolumeFunction
auf diese Funktion
gesetzt werden.
Beispielhaft soll gezeigt werden, wie man eine Rinforzando-Dynamik,
\rfz
, auch in die MIDI-Ausgabe übernehmen kann. Gleiches gilt
für neue, selbstdefinierte Dynamikzeichen, die in den Standarddefinitionen
nicht enthalten sind. Die Scheme-Funktion, die hier definiert wird,
setzt den Bruch von 0,9 für eine rfz-Anweisung und ruft andernfalls die
Standardanweisungen auf:
#(define (myDynamics dynamic) (if (equal? dynamic "rfz") 0.9 (default-dynamic-absolute-volume dynamic))) \score { \new Staff { \set Staff.midiInstrument = #"cello" \set Score.dynamicAbsoluteVolumeFunction = #myDynamics \new Voice { \relative c'' { a\pp b c-\rfz } } } \layout {} \midi {} }
Alternativ, insbesondere wenn die gesamte Tabelle der MIDI-Lautstärken umdefiniert werden soll, ist es besser, die default-dynamic-absolute-volume-Prozedur in der Datei ‘../scm/midi.scm’ und die hiermit verknüpfte Tabelle als Modell zu benutzen. Das letzte Beispiel dieses Abschnittes zeigt, wie das gemacht werden kann.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < ] | [ Nach oben : Controlling MIDI dynamics ] | [ > ] |
Overall MIDI volume
Die generellen Mindest- und Höchstwerte für die Lautstärke der MIDI-Datei
wird kontrolliert, indem die Eigenschaften midiMinimumVolume
unde midiMaximumVolume
auf der Score
-Ebene gesetzt
werden. Diese Eigenschaften haben nur Einfluss auf Dynamikzeichen, sodass
ein Dynamikzeichen direkt an den Anfang der Partitur gestellt werden muss,
wenn diese Einstellung von Anfang an Wirkung zeigen soll. Der Bruch,
der dann den einzelnen Dynamikzeichen entspricht, wird mit der
Formel
midiMinimumVolume + (midiMaximumVolume - midiMinimumVolume) * Bruch
errechnet. Im folgenden Beispiel wird die generelle MIDI-Lautstärke auf den Bereich zwischen 0.2 und 0.5 eingeschränkt.
\score { << \new Staff { \key g \major \time 2/2 \set Staff.midiInstrument = #"flute" \new Voice \relative c''' { r2 g\mp g fis ~ fis4 g8 fis e2 ~ e4 d8 cis d2 } } \new Staff { \key g \major \set Staff.midiInstrument = #"clarinet" \new Voice \relative c'' { b1\p a2. b8 a g2. fis8 e fis2 r } } >> \layout { } \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 72 2) midiMinimumVolume = #0.2 midiMaximumVolume = #0.5 } } }
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < ] | [ Nach oben : Controlling MIDI dynamics ] | [ > ] |
Equalizing different instruments (i)
Wenn die Mindest- und Höchstwerte für die MIDI-Lautstärke
innerhalb eines Staff
-Kontextes gesetzt werden,
kann damit die relative Lautstärke einzelner Instrumente kontrolliert
werden. Damit kann man die Qualität der MIDI-Datei
merklich verbessern.
In diesem Beispiel wird die Lautstärke der Klarinette relativ zur Lautstärke der Flöte verringert. In jeder Stimme muss eine Dynamikanweisung für die erste Note gesetzt werden, damit diese Einstellung korrekt funktioniert.
\score { << \new Staff { \key g \major \time 2/2 \set Staff.midiInstrument = #"flute" \set Staff.midiMinimumVolume = #0.7 \set Staff.midiMaximumVolume = #0.9 \new Voice \relative c''' { r2 g\mp g fis ~ fis4 g8 fis e2 ~ e4 d8 cis d2 } } \new Staff { \key g \major \set Staff.midiInstrument = #"clarinet" \set Staff.midiMinimumVolume = #0.3 \set Staff.midiMaximumVolume = #0.6 \new Voice \relative c'' { b1\p a2. b8 a g2. fis8 e fis2 r } } >> \layout { } \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 72 2) } } }
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < ] | [ Nach oben : Controlling MIDI dynamics ] | [ Percussion in MIDI > ] |
Equalizing different instruments (ii)
Wenn Mindest- und Höchstwerte für die Lautstärke der MIDI-Datei nicht vorgegeben werden, nimmt LilyPond standardmäßig einige Anpassungen für die Lautstärken bestimmter Instrumente vor. Diese Instrumente und ihre entsprechende Veränderung lassen sich aus der Tabelle instrument-equalizer-alist in der Datei ‘../scm/midi.scm’ entnehmen.
Dieser grundlegende Equalizer kann ersetzt werden, indem die
Funktion instrumentEqualizer
im Score
-Kontext auf
eine neue Scheme-Funktion gesetzt wird, die MIDI-Instrumentbezeichnungen
als einziges Argument akzeptiert und ein Zahlenpaar ausgibt, das
den Höchst- und Mindestwert für die Lautstärke des entpsrechenden
Instruments darstellt. Die Ersetzung der Standardfunktion wird
auf gleiche Weise vorgenommen, wie es schon für die
dynamicAbsoluteVolumeFunction
zu Beginn dieses Abschnittes
gezeigt wurde. Der Standard-Equalizer,
default-instrument-equalizer in der Datei
‘../scm/midi.scm’ zeigt, wie solche eine Funktion erstellt werden
kann.
Das folgende Beispiel definiert für die Flöte und Klarinette relative Lautstärkewerte, die denen des vorigen Beispiels entsprechen.
#(define my-instrument-equalizer-alist '()) #(set! my-instrument-equalizer-alist (append '( ("flute" . (0.7 . 0.9)) ("clarinet" . (0.3 . 0.6))) my-instrument-equalizer-alist)) #(define (my-instrument-equalizer s) (let ((entry (assoc s my-instrument-equalizer-alist))) (if entry (cdr entry)))) \score { << \new Staff { \key g \major \time 2/2 \set Score.instrumentEqualizer = #my-instrument-equalizer \set Staff.midiInstrument = #"flute" \new Voice \relative c''' { r2 g\mp g fis ~ fis4 g8 fis e2 ~ e4 d8 cis d2 } } \new Staff { \key g \major \set Staff.midiInstrument = #"clarinet" \new Voice \relative c'' { b1\p a2. b8 a g2. fis8 e fis2 r } } >> \layout { } \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 72 2) } } }
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Spacing issues >> ] | ||
[ < ] | [ Nach oben : MIDI output ] | [ Spacing issues > ] |
3.5.6 Percussion in MIDI
Schlagzeuginstrumente werden üblicherweise in einem DrumStaff
-Kontext
notiert. Aus diese Weise werden sie korrekt in den MIDI-Kanal 10
ausgegeben. Eine Schlagzeuge mit diskreten Tonhöhen, wie Xylophon,
Marima, Vibraphone, Pauken usw. werden wie „normale“ Instrumente
in einem Staff
-Kontext notiert. Nur so lässt sich auch hier
eine richtige MIDI-Ausgabe erreichen.
Einige Instrumente, die keine diskreten Tonhöhen haben, können nicht
über den MIDI-Kanal 10 erreicht werden und müssen deshalb in
einem normalen Staff
-Kontext notiert werden. Es handelt sich
um melodic tom, taiko drum, synth drum
usw.
Viele Schlagzeuginstrumnete sind nicht in den MIDI-Standard aufgenommen, z. B. Kastagnetten. Die einfachste Methode, derartige Instrumente zu ersetzen, ist, einen Klang auszuwählen, der ihnen halbwegs ähnlich kommt.
Known issues and warnings
Weil der MIDI-Standard keine Peitschenschläge kennt, wird ein Schlagstock (sidestick) für diesen Zweck eingesetzt.
[ << General input and output ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Percussion in MIDI ] | [ Nach oben : Top ] | [ Paper and pages > ] |
4. Spacing issues
4.1 Paper and pages | ||
4.2 Music layout | ||
4.3 Breaks | ||
4.4 Vertical spacing | ||
4.5 Horizontal Spacing | ||
4.6 Fitting music onto fewer pages |
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Spacing issues ] | [ Nach oben : Spacing issues ] | [ Paper size > ] |
4.1 Paper and pages
4.1.1 Paper size | ||
4.1.2 Page formatting |
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Paper and pages ] | [ Nach oben : Paper and pages ] | [ Page formatting > ] |
4.1.1 Paper size
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Paper size ] | [ Nach oben : Paper and pages ] | [ Vertical dimensions > ] |
4.1.2 Page formatting
Vertical dimensions | ||
Horizontal dimensions | ||
Other layout variables |
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Page formatting ] | [ Nach oben : Page formatting ] | [ Horizontal dimensions > ] |
Vertical dimensions
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Vertical dimensions ] | [ Nach oben : Page formatting ] | [ Other layout variables > ] |
Horizontal dimensions
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Horizontal dimensions ] | [ Nach oben : Page formatting ] | [ Music layout > ] |
Other layout variables
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Other layout variables ] | [ Nach oben : Spacing issues ] | [ Setting the staff size > ] |
4.2 Music layout
4.2.1 Setting the staff size | ||
4.2.2 Score layout |
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Music layout ] | [ Nach oben : Music layout ] | [ Score layout > ] |
4.2.1 Setting the staff size
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Setting the staff size ] | [ Nach oben : Music layout ] | [ Breaks > ] |
4.2.2 Score layout
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Score layout ] | [ Nach oben : Spacing issues ] | [ Line breaking > ] |
4.3 Breaks
4.3.1 Line breaking | ||
4.3.2 Page breaking | ||
4.3.3 Optimal page breaking | ||
4.3.4 Optimal page turning | ||
4.3.5 Minimal page breaking | ||
4.3.6 Explicit breaks | ||
4.3.7 Using an extra voice for breaks |
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Breaks ] | [ Nach oben : Breaks ] | [ Page breaking > ] |
4.3.1 Line breaking
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Line breaking ] | [ Nach oben : Breaks ] | [ Optimal page breaking > ] |
4.3.2 Page breaking
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Page breaking ] | [ Nach oben : Breaks ] | [ Optimal page turning > ] |
4.3.3 Optimal page breaking
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Optimal page breaking ] | [ Nach oben : Breaks ] | [ Minimal page breaking > ] |
4.3.4 Optimal page turning
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Optimal page turning ] | [ Nach oben : Breaks ] | [ Explicit breaks > ] |
4.3.5 Minimal page breaking
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Minimal page breaking ] | [ Nach oben : Breaks ] | [ Using an extra voice for breaks > ] |
4.3.6 Explicit breaks
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Explicit breaks ] | [ Nach oben : Breaks ] | [ Vertical spacing > ] |
4.3.7 Using an extra voice for breaks
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Using an extra voice for breaks ] | [ Nach oben : Spacing issues ] | [ Vertical spacing inside a system > ] |
4.4 Vertical spacing
4.4.1 Vertical spacing inside a system | ||
4.4.2 Vertical spacing between systems | ||
4.4.3 Explicit staff and system positioning | ||
4.4.4 Two-pass vertical spacing | ||
4.4.5 Vertical collision avoidance |
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Vertical spacing ] | [ Nach oben : Vertical spacing ] | [ Vertical spacing between systems > ] |
4.4.1 Vertical spacing inside a system
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Vertical spacing inside a system ] | [ Nach oben : Vertical spacing ] | [ Explicit staff and system positioning > ] |
4.4.2 Vertical spacing between systems
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Vertical spacing between systems ] | [ Nach oben : Vertical spacing ] | [ Two-pass vertical spacing > ] |
4.4.3 Explicit staff and system positioning
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Explicit staff and system positioning ] | [ Nach oben : Vertical spacing ] | [ Vertical collision avoidance > ] |
4.4.4 Two-pass vertical spacing
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Two-pass vertical spacing ] | [ Nach oben : Vertical spacing ] | [ Horizontal spacing > ] |
4.4.5 Vertical collision avoidance
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Vertical collision avoidance ] | [ Nach oben : Spacing issues ] | [ Horizontal spacing overview > ] |
4.5 Horizontal Spacing
4.5.1 Horizontal spacing overview | ||
4.5.2 New spacing area | ||
4.5.3 Changing horizontal spacing | ||
4.5.4 Line length | ||
4.5.5 Proportional notation |
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Horizontal spacing ] | [ Nach oben : Horizontal spacing ] | [ New spacing area > ] |
4.5.1 Horizontal spacing overview
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Horizontal spacing overview ] | [ Nach oben : Horizontal spacing ] | [ Changing horizontal spacing > ] |
4.5.2 New spacing area
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < New spacing area ] | [ Nach oben : Horizontal spacing ] | [ Line length > ] |
4.5.3 Changing horizontal spacing
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Changing horizontal spacing ] | [ Nach oben : Horizontal spacing ] | [ Proportional notation > ] |
4.5.4 Line length
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Line length ] | [ Nach oben : Horizontal spacing ] | [ Fitting music onto fewer pages > ] |
4.5.5 Proportional notation
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Proportional notation ] | [ Nach oben : Spacing issues ] | [ Displaying spacing > ] |
4.6 Fitting music onto fewer pages
4.6.1 Displaying spacing | ||
4.6.2 Changing spacing |
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Fitting music onto fewer pages ] | [ Nach oben : Fitting music onto fewer pages ] | [ Changing spacing > ] |
4.6.1 Displaying spacing
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Changing defaults >> ] | ||
[ < Displaying spacing ] | [ Nach oben : Fitting music onto fewer pages ] | [ Changing defaults > ] |
4.6.2 Changing spacing
Manchmal bleiben nur noch ein oder zwei Systeme auf der letzten Seite übrig. Das ist immer ärgerlich, besonders wenn es scheint, dass auf den vorigen Seiten genug Platz ist, um die Systeme noch unterzubringen.
Wenn man versucht, das Layout zu verändern, kommt einem
der Befehl annotate-spacing
zu Hilfe. Mit diesem
Befehl erhält man die Werte von verschiedenen Abstandsbefehlen
ausgedruckt, mehr Information im Kapitel Displaying spacing.
Anhand dieser Angaben kann dann entschieden werden, welche
Werte verändert werden müssen.
Neben Rändern gibt es nämlich weitere Optionen, Platz zu sparen:
-
LilyPond kann die Systeme so dicht wie möglich platzieren (damit
so viele Systeme wie möglich auf eine Seite passen), aber sie
dann so anordnen, dass kein weißer Rand unten auf der Seite entsteht.
\paper { between-system-padding = #0.1 between-system-space = #0.1 ragged-last-bottom = ##f ragged-bottom = ##f }
-
Die Anzahl der Systeme kann reduziert werden (wenn LilyPond
die Musik auf 11 Systeme verteilt, kann man die Benutzung von
nur 10 Systemen erzwingen).
\paper { system-count = #10 }
-
Vermeidung von Objekten, die den vertikalen Abstand von Systemen
vergrößern, hilft oft. Die Verwendung von Klammern bei Wiederholungen
etwa braucht mehr Platz. Wenn die Noten innerhalb der Klammern auf
zwei Systeme verteilt sind, brauchen sie mehr Platz, als wenn sie
nur auf einer Zeile gedruckt werden.
Ein anderes Beispiel ist es, Dynamik-Zeichen, die besonders weit „hervorstehen“, zu verschieben.
\relative c' { e4 c g\f c \override DynamicLineSpanner #'padding = #-1.8 \override DynamicText #'extra-offset = #'( -2.1 . 0) e4 c g\f c }
-
Die horizontalen Abstände können mit der
SpacingSpanner
-Eigenschaft verändert werden. Siehe Changing horizontal spacing für Einzelheiten.\score { \relative c'' { g4 e e2 | f4 d d2 | c4 d e f | g4 g g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | d4 d d d | d4 e f2 | e4 e e e | e4 f g2 | g4 e e2 | f4 d d2 | c4 e g g | c,1 | } \layout { \context { \Score \override SpacingSpanner #'base-shortest-duration = #(ly:make-moment 1 4) } } }
[ << Spacing issues ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Changing spacing ] | [ Nach oben : Top ] | [ Interpretation contexts > ] |
5. Changing defaults
5.1 Interpretation contexts | ||
5.2 Explaining the Internals Reference | ||
5.3 Modifying properties | ||
5.4 Useful concepts and properties | ||
5.5 Advanced tweaks |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Changing defaults ] | [ Nach oben : Changing defaults ] | [ Contexts explained > ] |
5.1 Interpretation contexts
5.1.1 Contexts explained | ||
5.1.2 Creating contexts | ||
5.1.3 Modifying context plug-ins | ||
5.1.4 Changing context default settings | ||
5.1.5 Defining new contexts | ||
5.1.6 Aligning contexts |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Interpretation contexts ] | [ Nach oben : Interpretation contexts ] | [ Score - the master of all contexts > ] |
5.1.1 Contexts explained
Score - the master of all contexts | ||
Top-level contexts - staff containers | ||
Intermediate-level contexts - staves | ||
Bottom-level contexts - voices |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Contexts explained ] | [ Nach oben : Contexts explained ] | [ Top-level contexts - staff containers > ] |
Score - the master of all contexts
Top-level contexts - staff containers
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Top-level contexts - staff containers ] | [ Nach oben : Contexts explained ] | [ Bottom-level contexts - voices > ] |
Intermediate-level contexts - staves
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Intermediate-level contexts - staves ] | [ Nach oben : Contexts explained ] | [ Creating contexts > ] |
Bottom-level contexts - voices
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Bottom-level contexts - voices ] | [ Nach oben : Interpretation contexts ] | [ Modifying context plug-ins > ] |
5.1.2 Creating contexts
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Creating contexts ] | [ Nach oben : Interpretation contexts ] | [ Changing context default settings > ] |
5.1.3 Modifying context plug-ins
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Modifying context plug-ins ] | [ Nach oben : Interpretation contexts ] | [ Defining new contexts > ] |
5.1.4 Changing context default settings
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Changing context default settings ] | [ Nach oben : Interpretation contexts ] | [ Aligning contexts > ] |
5.1.5 Defining new contexts
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Defining new contexts ] | [ Nach oben : Interpretation contexts ] | [ Explaining the Internals Reference > ] |
5.1.6 Aligning contexts
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Aligning contexts ] | [ Nach oben : Changing defaults ] | [ Navigating the program reference > ] |
5.2 Explaining the Internals Reference
5.2.1 Navigating the program reference | ||
5.2.2 Layout interfaces | ||
5.2.3 Determining the grob property | ||
5.2.4 Naming conventions |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Explaining the Internals Reference ] | [ Nach oben : Explaining the Internals Reference ] | [ Layout interfaces > ] |
5.2.1 Navigating the program reference
5.2.2 Layout interfaces
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Layout interfaces ] | [ Nach oben : Explaining the Internals Reference ] | [ Naming conventions > ] |
5.2.3 Determining the grob property
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Determining the grob property ] | [ Nach oben : Explaining the Internals Reference ] | [ Modifying properties > ] |
5.2.4 Naming conventions
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Naming conventions ] | [ Nach oben : Changing defaults ] | [ Overview of modifying properties > ] |
5.3 Modifying properties
5.3.1 Overview of modifying properties | ||
5.3.2 The \set command | ||
5.3.3 The \override command | ||
5.3.4 The \tweak command | ||
5.3.5 \set vs. \override |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Modifying properties ] | [ Nach oben : Modifying properties ] | [ The set command > ] |
5.3.1 Overview of modifying properties
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Overview of modifying properties ] | [ Nach oben : Modifying properties ] | [ The override command > ] |
5.3.2 The \set
command
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < The set command ] | [ Nach oben : Modifying properties ] | [ The tweak command > ] |
5.3.3 The \override
command
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < The override command ] | [ Nach oben : Modifying properties ] | [ set versus override > ] |
5.3.4 The \tweak
command
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < The tweak command ] | [ Nach oben : Modifying properties ] | [ Useful concepts and properties > ] |
5.3.5 \set
vs. \override
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < set versus override ] | [ Nach oben : Changing defaults ] | [ Input modes > ] |
5.4 Useful concepts and properties
5.4.1 Input modes | ||
5.4.2 Direction and placement | ||
5.4.3 Distances and measurements | ||
5.4.4 Staff symbol properties | ||
5.4.5 Spanners | ||
5.4.6 Visibility of objects | ||
5.4.7 Line styles | ||
5.4.8 Rotating objects |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Useful concepts and properties ] | [ Nach oben : Useful concepts and properties ] | [ Direction and placement > ] |
5.4.1 Input modes
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Input modes ] | [ Nach oben : Useful concepts and properties ] | [ Distances and measurements > ] |
5.4.2 Direction and placement
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Direction and placement ] | [ Nach oben : Useful concepts and properties ] | [ Staff symbol properties > ] |
5.4.3 Distances and measurements
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Distances and measurements ] | [ Nach oben : Useful concepts and properties ] | [ Spanners > ] |
5.4.4 Staff symbol properties
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Staff symbol properties ] | [ Nach oben : Useful concepts and properties ] | [ > ] |
5.4.5 Spanners
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Spanners ] | [ Nach oben : Spanners ] | [ > ] |
Using the spanner-interface
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < ] | [ Nach oben : Spanners ] | [ Visibility of objects > ] |
Using the line-spanner-interface
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < ] | [ Nach oben : Useful concepts and properties ] | [ Removing the stencil > ] |
5.4.6 Visibility of objects
Removing the stencil | ||
Making objects transparent | ||
Painting objects white | ||
Using break-visibility | ||
Special considerations |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Visibility of objects ] | [ Nach oben : Visibility of objects ] | [ Making objects transparent > ] |
Removing the stencil
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Removing the stencil ] | [ Nach oben : Visibility of objects ] | [ Painting objects white > ] |
Making objects transparent
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Making objects transparent ] | [ Nach oben : Visibility of objects ] | [ Using break-visibility > ] |
Painting objects white
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Painting objects white ] | [ Nach oben : Visibility of objects ] | [ Special considerations > ] |
Using break-visibility
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Using break-visibility ] | [ Nach oben : Visibility of objects ] | [ Line styles > ] |
Special considerations
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Special considerations ] | [ Nach oben : Useful concepts and properties ] | [ Rotating objects > ] |
5.4.7 Line styles
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Line styles ] | [ Nach oben : Useful concepts and properties ] | [ Rotating layout objects > ] |
5.4.8 Rotating objects
Rotating layout objects | ||
Rotating markup |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Rotating objects ] | [ Nach oben : Rotating objects ] | [ Rotating markup > ] |
Rotating layout objects
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Rotating layout objects ] | [ Nach oben : Rotating objects ] | [ Advanced tweaks > ] |
Rotating markup
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Rotating markup ] | [ Nach oben : Changing defaults ] | [ Aligning objects > ] |
5.5 Advanced tweaks
5.5.1 Aligning objects | ||
5.5.2 Vertical grouping of grobs | ||
5.5.3 Modifying stencils | ||
5.5.4 Modifying shapes |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Advanced tweaks ] | [ Nach oben : Advanced tweaks ] | [ Setting X-offset and Y-offset directly > ] |
5.5.1 Aligning objects
Setting X-offset and Y-offset directly | ||
Using the side-position-interface | ||
Using the self-alignment-interface | ||
Using the break-aligned-interface |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Aligning objects ] | [ Nach oben : Aligning objects ] | [ Using the side-position-interface > ] |
Setting X-offset
and Y-offset
directly
Using the side-position-interface
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Using the side-position-interface ] | [ Nach oben : Aligning objects ] | [ > ] |
Using the self-alignment-interface
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Using the self-alignment-interface ] | [ Nach oben : Aligning objects ] | [ > ] |
Using the aligned-on-parent
procedures
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < ] | [ Nach oben : Aligning objects ] | [ Using the break-aligned-interface > ] |
Using the centered-on-parent
procedures
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < ] | [ Nach oben : Aligning objects ] | [ Vertical grouping of grobs > ] |
Using the break-aligned-interface
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Using the break-aligned-interface ] | [ Nach oben : Advanced tweaks ] | [ Modifying stencils > ] |
5.5.2 Vertical grouping of grobs
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Vertical grouping of grobs ] | [ Nach oben : Advanced tweaks ] | [ Modifying shapes > ] |
5.5.3 Modifying stencils
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Modifying stencils ] | [ Nach oben : Advanced tweaks ] | [ Modifying ties and slurs > ] |
5.5.4 Modifying shapes
Modifying ties and slurs |
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Interfaces for programmers >> ] | ||
[ < Modifying shapes ] | [ Nach oben : Modifying shapes ] | [ Interfaces for programmers > ] |
Modifying ties and slurs
[ << Changing defaults ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Modifying ties and slurs ] | [ Nach oben : Top ] | [ Music functions > ] |
6. Interfaces for programmers
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Interfaces for programmers ] | [ Nach oben : Interfaces for programmers ] | [ Overview of music functions > ] |
6.1 Music functions
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Music functions ] | [ Nach oben : Music functions ] | [ Simple substitution functions > ] |
6.1.1 Overview of music functions
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Overview of music functions ] | [ Nach oben : Music functions ] | [ Paired substitution functions > ] |
6.1.2 Simple substitution functions
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Simple substitution functions ] | [ Nach oben : Music functions ] | [ Mathematics in functions > ] |
6.1.3 Paired substitution functions
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Paired substitution functions ] | [ Nach oben : Music functions ] | [ Void functions > ] |
6.1.4 Mathematics in functions
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Mathematics in functions ] | [ Nach oben : Music functions ] | [ Functions without arguments > ] |
6.1.5 Void functions
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Void functions ] | [ Nach oben : Music functions ] | [ Overview of available music functions > ] |
6.1.6 Functions without arguments
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Functions without arguments ] | [ Nach oben : Music functions ] | [ Programmer interfaces > ] |
6.1.7 Overview of available music functions
-
acciaccatura
- music (music) -
Create an acciaccatura from the following music expression
-
addChordShape
- key-symbol (symbol) tuning (pair) shape-definition (unknown) -
Add chord shape shape-definition to the chord-shape-table hash with the key (cons key-symbol tuning).
-
addInstrumentDefinition
- name (string) lst (list) -
Create instrument name with properties list.
-
addQuote
- name (string) music (music) -
Define music as a quotable music expression named name
-
afterGrace
- main (music) grace (music) -
Create grace note(s) after a main music expression.
-
allowPageTurn
-
Allow a page turn. May be used at toplevel (ie between scores or markups), or inside a score.
-
applyContext
- proc (procedure) -
Modify context properties with Scheme procedure proc.
-
applyMusic
- func (procedure) music (music) -
Apply procedure func to music.
-
applyOutput
- ctx (symbol) proc (procedure) -
Apply function
proc
to every layout object in contextctx
-
appoggiatura
- music (music) -
Create an appoggiatura from music
-
assertBeamQuant
- l (pair) r (pair) -
Testing function: check whether the beam quants l and r are correct
-
assertBeamSlope
- comp (procedure) -
Testing function: check whether the slope of the beam is the same as
comp
-
autochange
- music (music) -
Make voices that switch between staves automatically
-
balloonGrobText
- grob-name (symbol) offset (pair of numbers) text (markup) -
Attach text to grob-name at offset offset (use like
\once
) -
balloonText
- offset (pair of numbers) text (markup) -
Attach text at offset (use like
\tweak
) -
bar
- type (string) -
Insert a bar line of type type
-
barNumberCheck
- n (integer) -
Print a warning if the current bar number is not n.
-
bendAfter
- delta (unknown) -
Create a fall or doit of pitch interval delta.
-
breathe
-
Insert a breath mark.
-
clef
- type (string) -
Set the current clef to type.
-
cueDuring
- what (string) dir (direction) main-music (music) -
Insert contents of quote what corresponding to main-music, in a CueVoice oriented by dir.
-
displayLilyMusic
- music (music) -
Display the LilyPond input representation of music to the console.
-
displayMusic
- music (music) -
Display the internal representation of music to the console.
-
endSpanners
- music (music) -
Terminate the next spanner prematurely after exactly one note without the need of a specific end spanner.
-
featherDurations
- factor (moment) argument (music) -
Adjust durations of music in argument by rational factor.
-
grace
- music (music) -
Insert music as grace notes.
-
includePageLayoutFile
-
Include the file <basename>-page-layout.ly. Deprecated as part of two-pass spacing.
-
instrumentSwitch
- name (string) -
Switch instrument to name, which must be predefined with
\addInstrumentDefinition
. -
keepWithTag
- tag (symbol) music (music) -
Include only elements of music that are tagged with tag.
-
killCues
- music (music) -
Remove cue notes from music.
-
label
- label (symbol) -
Create label as a bookmarking label
-
makeClusters
- arg (music) -
Display chords in arg as clusters
-
musicMap
- proc (procedure) mus (music) -
(undocumented; fixme)
-
noPageBreak
-
Forbid a page break. May be used at toplevel (ie between scores or markups), or inside a score.
-
noPageTurn
-
Forbid a page turn. May be used at toplevel (ie between scores or markups), or inside a score.
-
octaveCheck
- pitch-note (music) -
octave check
-
ottava
- octave (number) -
set the octavation
-
overrideProperty
- name (string) property (symbol) value (any type) -
Set property to value in all grobs named name. The name argument is a string of the form
"Context.GrobName"
or"GrobName"
-
pageBreak
-
Force a page break. May be used at toplevel (ie between scores or markups), or inside a score.
-
pageTurn
-
Force a page turn between two scores or top-level markups.
-
parallelMusic
- voice-ids (list) music (music) -
Define parallel music sequences, separated by ’|’ (bar check signs), and assign them to the identifiers provided in voice-ids.
voice-ids: a list of music identifiers (symbols containing only letters)
music: a music sequence, containing BarChecks as limiting expressions.
Example:
\parallelMusic #'(A B C) { c c | d d | e e | d d | e e | f f | } <==> A = { c c | d d | } B = { d d | e e | } C = { e e | f f | }
-
parenthesize
- arg (music) -
Tag arg to be parenthesized.
-
partcombine
- part1 (music) part2 (music) -
(undocumented; fixme)
-
pitchedTrill
- main-note (music) secondary-note (music) -
(undocumented; fixme)
-
pointAndClickOff
-
(undocumented; fixme)
-
pointAndClickOn
-
(undocumented; fixme)
-
quoteDuring
- what (string) main-music (music) -
(undocumented; fixme)
-
removeWithTag
- tag (symbol) music (music) -
Remove elements of music that are tagged with tag.
-
resetRelativeOctave
- reference-note (music) -
Set the octave inside a \relative section.
-
rightHandFinger
- finger (number or string) -
Apply finger as a fingering indication.
-
scaleDurations
- fraction (pair of numbers) music (music) -
Multiply the duration of events in music by fraction.
-
scoreTweak
- name (string) -
Include the score tweak, if exists.
-
shiftDurations
- dur (integer) dots (integer) arg (music) -
Scale arg up by a factor of 2^dur*(2-(1/2)^dots).
-
spacingTweaks
- parameters (list) -
Set the system stretch, by reading the ’system-stretch property of the ‘parameters’ assoc list.
-
storePredefinedDiagram
- chord (music) tuning (pair) diagram-definition (unknown) -
Add predefined fret diagram defined by diagram-definition for the chord pitches chord and the stringTuning tuning.
-
tag
- tag (symbol) arg (music) -
Add tag to the
tags
property of arg. -
tocItem
- text (markup) -
Add a line to the table of content, using the
tocItemMarkup
paper variable markup -
transposedCueDuring
- what (string) dir (direction) pitch-note (music) main-music (music) -
Insert notes from the part what into a voice called
cue
, using the transposition defined by pitch-note. This happens simultaneously with main-music, which is usually a rest. The argument dir determines whether the cue notes should be notated as a first or second voice. -
transposition
- pitch-note (music) -
Set instrument transposition
-
tweak
- sym (symbol) val (any type) arg (music) -
Add
sym . val
to thetweaks
property of arg. -
unfoldRepeats
- music (music) -
(undocumented; fixme)
-
withMusicProperty
- sym (symbol) val (any type) music (music) -
Set sym to val in music.
6.2 Programmer interfaces
6.2.1 Input variables and Scheme | ||
6.2.2 Internal music representation |
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Programmer interfaces ] | [ Nach oben : Programmer interfaces ] | [ Internal music representation > ] |
6.2.1 Input variables and Scheme
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Input variables and Scheme ] | [ Nach oben : Programmer interfaces ] | [ Building complicated functions > ] |
6.2.2 Internal music representation
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Internal music representation ] | [ Nach oben : Interfaces for programmers ] | [ Displaying music expressions > ] |
6.3 Building complicated functions
6.3.1 Displaying music expressions | ||
6.3.2 Music properties | ||
6.3.3 Doubling a note with slurs (example) | ||
6.3.4 Adding articulation to notes (example) |
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Building complicated functions ] | [ Nach oben : Building complicated functions ] | [ Music properties > ] |
6.3.1 Displaying music expressions
6.3.2 Music properties
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Music properties ] | [ Nach oben : Building complicated functions ] | [ Adding articulation to notes (example) > ] |
6.3.3 Doubling a note with slurs (example)
6.3.4 Adding articulation to notes (example)
6.4 Markup programmer interface
6.4.1 Markup construction in Scheme | ||
6.4.2 How markups work internally | ||
6.4.3 New markup command definition | ||
6.4.4 New markup list command definition |
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Markup programmer interface ] | [ Nach oben : Markup programmer interface ] | [ How markups work internally > ] |
6.4.1 Markup construction in Scheme
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Markup construction in Scheme ] | [ Nach oben : Markup programmer interface ] | [ New markup command definition > ] |
6.4.2 How markups work internally
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < How markups work internally ] | [ Nach oben : Markup programmer interface ] | [ New markup list command definition > ] |
6.4.3 New markup command definition
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < New markup command definition ] | [ Nach oben : Markup programmer interface ] | [ Contexts for programmers > ] |
6.4.4 New markup list command definition
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < New markup list command definition ] | [ Nach oben : Interfaces for programmers ] | [ Context evaluation > ] |
6.5 Contexts for programmers
6.5.1 Context evaluation | ||
6.5.2 Running a function on all layout objects |
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Contexts for programmers ] | [ Nach oben : Contexts for programmers ] | [ Running a function on all layout objects > ] |
6.5.1 Context evaluation
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Context evaluation ] | [ Nach oben : Contexts for programmers ] | [ Scheme procedures as properties > ] |
6.5.2 Running a function on all layout objects
6.6 Scheme procedures as properties
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Scheme procedures as properties ] | [ Nach oben : Interfaces for programmers ] | [ Difficult tweaks > ] |
6.7 Using Scheme code instead of \tweak
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Literature list >> ] | ||
[ < Using Scheme code instead of \tweak ] | [ Nach oben : Interfaces for programmers ] | [ Literature list > ] |
6.8 Difficult tweaks
[ << Interfaces for programmers ] | [Anfang][Inhalt][Index][ ? ] | [ Notation manual tables >> ] | ||
[ < Difficult tweaks ] | [ Nach oben : Top ] | [ Notation manual tables > ] |
A. Literature list
Wenn Sie mehr über Notation und den Notenstich erfahren wollen, sind hier einige interessante Titel gesammelt.
- Ignatzek 1995
Klaus Ignatzek, Die Jazzmethode für Klavier. Schott’s Söhne 1995. Mainz, Germany ISBN 3-7957-5140-3.
Eine praktische Einführung zum Spielen von Jazz auf dem Klavier. Eins der ersten Kapitel enthält einen Überblick über die Akkorde, die im Jazz verwendet werden.
- Gerou 1996
-
Tom Gerou and Linda Lusk, Essential Dictionary of Music Notation. Alfred Publishing, Van Nuys CA ISBN 0-88284-768-6.
Eine ausführliche, alphabetische Liste vieler Belange des Musiksatzes und der Notation; die üblichen Fälle werden behandelt.
- Read 1968
Gardner Read, Music Notation: A Manual of Modern Practice. Taplinger Publishing, New York (2nd edition).
Ein Klassiker für die Musiknotation.
- Ross 1987
Ted Ross, Teach yourself the art of music engraving and processing. Hansen House, Miami, Florida 1987.
Dieses Buch handelt vom Musiksatz, also vom professionellen Notenstich. Hier sind Anweisungen über Stempel, die Benutzung von Stiften und nationale Konventionen versammelt. Die Kapitel zu Reproduktionstechniken und der historische Überblick sind auch interessant.
- Schirmer 2001
The G.Schirmer/AMP Manual of Style and Usage. G.Schirmer/AMP, NY, 2001.
Dieses Handbuch setzt den Fokus auf die Herstellung von Drucksachen für den Schirmer-Verlag. Hier werden viele Details behandelt, die sich in anderen Notationshandbüchern nicht finden. Es gibt auch einen guten Überblick, was nötig ist, um Drucke in publikationstauglicher Qualität zu produzieren.
- Stone 1980
-
Kurt Stone, Music Notation in the Twentieth Century. Norton, New York 1980.
Dieses Buch enthält einen Überblick über die Notation von moderner E-Musik, beginnt aber mit einem Überblick über bereits existente Praktiken.
Das Quellenarchiv enthält eine ausführlichere BibTeX-Bibliographie mit über 100 Titeln in der Bibliographie.
[ << Literature list ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Literature list ] | [ Nach oben : Top ] | [ Chord name chart > ] |
B. Notation manual tables
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Notation manual tables ] | [ Nach oben : Notation manual tables ] | [ Common chord modifiers > ] |
B.1 Chord name chart
Die Tabelle zeigt die zwei üblichen Möglichkeiten, wie Akkordbezeichnungen ausgegeben werden. Es wird auch die entsprechende Note ausgegeben.
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Chord name chart ] | [ Nach oben : Notation manual tables ] | [ Predefined fretboard diagrams > ] |
B.2 Common chord modifiers
Die Tabelle zeigt Modifikatoren für Akkorde, die im \chordmode
-Modus
benutzt werden können, um übliche Akkordkonstrukte zu notieren.
Akkordtyp | Intervalle | Modifikator(en) | Beispiel |
Dur | große Terz, Quinte |
| |
Moll | kleine Terz, Quinte |
| |
Übermäßig | Große Terz, übermäßige Quinte |
| |
Vermindert | Kleine Terz, verminderte Quinte |
| |
Dominantsieben | Durdreiklang, kleine Septime |
| |
Große Septime | Durdreiklang, große Septime |
| |
Kleine Septime | Molldreiklang, kleine Septime |
| |
Verminderte Septime | Verminderter Dreiklang, verminderte Septime |
| |
Übermäßige Septime | Übermäßiger Dreiklang, kleine Septime |
| |
halbverminderte Septime | Verminderter Dreklang, kleine Sept |
| |
Kleine MollSept | Molldreiklang, Durseptime |
| |
Große Sexte | Durdreiklang, Sexte |
| |
Kleine Sexte | Molldreiklang, Sexte |
| |
Dominantnone | Dominantsept, große None |
| |
Dur None | Große None, große Septime |
| |
Moll None | Große None, kleine Septime |
| |
Dominantundezime | Dominantnone, perfekte Undezime |
| |
Durundezime | Große None, perfekte Unidezime |
| |
Mollundezime | Kleine None, perfekte Undezime |
| |
Dominant-13 | Dominantnone, große 13 |
| |
Dominant-13 |
| ||
Dur-13 | Große Undezime, große 13 |
| |
Moll-13 | Kleine Undezime, große 13 |
| |
Sekundakkord | große Sekunde, perfekte Quinte |
| |
Quartakkord | perfekte Quarte, perfekte Quinte |
|
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Common chord modifiers ] | [ Nach oben : Notation manual tables ] | [ MIDI instruments > ] |
B.3 Predefined fretboard diagrams
Die Tabelle zeigt alle vordefinierten Bunddiagramme.
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Predefined fretboard diagrams ] | [ Nach oben : Notation manual tables ] | [ List of colors > ] |
B.4 MIDI instruments
Hier eine Liste von Musikinstrumentenbezeichnungen, die als Name für
midiInstrument
benutzt werden können.
acoustic grand contrabass lead 7 (fifths) bright acoustic tremolo strings lead 8 (bass+lead) electric grand pizzicato strings pad 1 (new age) honky-tonk orchestral strings pad 2 (warm) electric piano 1 timpani pad 3 (polysynth) electric piano 2 string ensemble 1 pad 4 (choir) harpsichord string ensemble 2 pad 5 (bowed) clav synthstrings 1 pad 6 (metallic) celesta synthstrings 2 pad 7 (halo) glockenspiel choir aahs pad 8 (sweep) music box voice oohs fx 1 (rain) vibraphone synth voice fx 2 (soundtrack) marimba orchestra hit fx 3 (crystal) xylophone trumpet fx 4 (atmosphere) tubular bells trombone fx 5 (brightness) dulcimer tuba fx 6 (goblins) drawbar organ muted trumpet fx 7 (echoes) percussive organ french horn fx 8 (sci-fi) rock organ brass section sitar church organ synthbrass 1 banjo reed organ synthbrass 2 shamisen accordion soprano sax koto harmonica alto sax kalimba concertina tenor sax bagpipe acoustic guitar (nylon) baritone sax fiddle acoustic guitar (steel) oboe shanai electric guitar (jazz) english horn tinkle bell electric guitar (clean) bassoon agogo electric guitar (muted) clarinet steel drums overdriven guitar piccolo woodblock distorted guitar flute taiko drum guitar harmonics recorder melodic tom acoustic bass pan flute synth drum electric bass (finger) blown bottle reverse cymbal electric bass (pick) shakuhachi guitar fret noise fretless bass whistle breath noise slap bass 1 ocarina seashore slap bass 2 lead 1 (square) bird tweet synth bass 1 lead 2 (sawtooth) telephone ring synth bass 2 lead 3 (calliope) helicopter violin lead 4 (chiff) applause viola lead 5 (charang) gunshot cello lead 6 (voice)
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < MIDI instruments ] | [ Nach oben : Notation manual tables ] | [ The Feta font > ] |
B.5 List of colors
Normal colors
Die Syntax zur Benutzung findet sich im Abschnitt Coloring objects.
black white red green blue cyan magenta yellow grey darkred darkgreen darkblue darkcyan darkmagenta darkyellow
X color names
X-Farbbezeichnungen haben verschiedene Varianten:
Alle Bezeichnungen, die als einziges Wort mit Großbuchstaben geschrieben werden (bspw. ‚LightSlateBlue‘), können auch von Leerzeichen getrennt geschrieben werden (also ‚light slate blue‘).
Das Wort ‚grey‘ kann in jedem Fall auch ‚gray‘ geschrieben werden (bspw. ‚DarkSlateGray‘).
Manche Bezeichnungen können auch ein numerales Suffix tragen (etwa ‚LightSalmon4‘).
Color Names without a numerical suffix:
snow GhostWhite WhiteSmoke gainsboro FloralWhite OldLace linen AntiqueWhite PapayaWhip BlanchedAlmond bisque PeachPuff NavajoWhite moccasin cornsilk ivory LemonChiffon seashell honeydew MintCream azure AliceBlue lavender LavenderBlush MistyRose white black DarkSlateGrey DimGrey SlateGrey LightSlateGrey grey LightGrey MidnightBlue navy NavyBlue CornflowerBlue DarkSlateBlue SlateBlue MediumSlateBlue LightSlateBlue MediumBlue RoyalBlue blue DodgerBlue DeepSkyBlue SkyBlue LightSkyBlue SteelBlue LightSteelBlue LightBlue PowderBlue PaleTurquoise DarkTurquoise MediumTurquoise turquoise cyan LightCyan CadetBlue MediumAquamarine aquamarine DarkGreen DarkOliveGreen DarkSeaGreen SeaGreen MediumSeaGreen LightSeaGreen PaleGreen SpringGreen LawnGreen green chartreuse MediumSpringGreen GreenYellow LimeGreen YellowGreen ForestGreen OliveDrab DarkKhaki khaki PaleGoldenrod LightGoldenrodYellow LightYellow yellow gold LightGoldenrod goldenrod DarkGoldenrod RosyBrown IndianRed SaddleBrown sienna peru burlywood beige wheat SandyBrown tan chocolate firebrick brown DarkSalmon salmon LightSalmon orange DarkOrange coral LightCoral tomato OrangeRed red HotPink DeepPink pink LightPink PaleVioletRed maroon MediumVioletRed VioletRed magenta violet plum orchid MediumOrchid DarkOrchid DarkViolet BlueViolet purple MediumPurple thistle DarkGrey DarkBlue DarkCyan DarkMagenta DarkRed LightGreen
Color names with a numerical suffix
Für die folgenden Bezeichnungen kann das Suffix N durch eine Zahl von 1–4 ersetzt werden.
snowN seashellN AntiqueWhiteN bisqueN PeachPuffN NavajoWhiteN LemonChiffonN cornsilkN ivoryN honeydewN LavenderBlushN MistyRoseN azureN SlateBlueN RoyalBlueN blueN DodgerBlueN SteelBlueN DeepSkyBlueN SkyBlueN LightSkyBlueN LightSteelBlueN LightBlueN LightCyanN PaleTurquoiseN CadetBlueN turquoiseN cyanN aquamarineN DarkSeaGreenN SeaGreenN PaleGreenN SpringGreenN greenN chartreuseN OliveDrabN DarkOliveGreenN khakiN LightGoldenrodN LightYellowN yellowN goldN goldenrodN DarkGoldenrodN RosyBrownN IndianRedN siennaN burlywoodN wheatN tanN chocolateN firebrickN brownN salmonN LightSalmonN orangeN DarkOrangeN coralN tomatoN OrangeRedN redN DeepPinkN HotPinkN pinkN LightPinkN PaleVioletRedN maroonN VioletRedN magentaN orchidN plumN MediumOrchidN DarkOrchidN purpleN MediumPurpleN thistleN
Grey Scale
Eine Grauskala kann mit der Bezeichnung
greyN
erstellt werden, wobei N eine Zahl von 0–100 darstellt.
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < List of colors ] | [ Nach oben : Notation manual tables ] | [ Note head styles > ] |
B.6 The Feta font
Die folgenden Symbole sind als Emmentaler-Schriftart verfügbar; auf sie
kann direkt zugegriffen werden, indem man die übliche Textbeschriftung
benutzt. \musicglyph
greift direkt auf die Notationsschriftart
zu (bspw. g^\markup {
\musicglyph #"scripts.segno" }
). Siehe auch Formatting text.
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < The Feta font ] | [ Nach oben : Notation manual tables ] | [ Text markup commands > ] |
B.7 Note head styles
Folgende Stile können zur Darstellung der Notenköpfe verwendet werden:
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Note head styles ] | [ Nach oben : Notation manual tables ] | [ Font > ] |
B.8 Text markup commands
The following commands can all be used inside \markup { }
.
B.8.1 Font | ||
B.8.2 Align | ||
B.8.3 Graphic | ||
B.8.4 Music | ||
B.8.5 Instrument Specific Markup | ||
B.8.6 Other |
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Text markup commands ] | [ Nach oben : Text markup commands ] | [ Align > ] |
B.8.1 Font
-
\abs-fontsize
size (number) arg (markup) -
Use size as the absolute font size to display arg. Adjusts
baseline-skip
andword-space
accordingly.\markup { default text font size \hspace #2 \abs-fontsize #16 { text font size 16 } \hspace #2 \abs-fontsize #12 { text font size 12 } }
-
\bold
arg (markup) -
Switch to bold font-series.
\markup { default \hspace #2 \bold bold }
-
\box
arg (markup) -
Draw a box round arg. Looks at
thickness
,box-padding
andfont-size
properties to determine line thickness and padding around the markup.\markup { \override #'(box-padding . 0.5) \box \line { V. S. } }
Used properties:
-
box-padding
(0.2) -
font-size
(0) -
thickness
(1)
-
-
\caps
arg (markup) -
Copy of the
\smallCaps
command.\markup { default \hspace #2 \caps { Text in small caps } }
-
\dynamic
arg (markup) -
Use the dynamic font. This font only contains s, f, m, z, p, and r. When producing phrases, like ‚più f‘, the normal words (like ‚più‘) should be done in a different font. The recommended font for this is bold and italic.
\markup { \dynamic { sfzp } }
-
\finger
arg (markup) -
Set arg as small numbers.
\markup { \finger { 1 2 3 4 5 } }
-
\fontCaps
arg (markup) -
Set
font-shape
tocaps
Note:
\fontCaps
requires the installation and selection of fonts which support thecaps
font shape. -
\fontsize
increment (number) arg (markup) -
Add increment to the font-size. Adjusts
baseline-skip
accordingly.\markup { default \hspace #2 \fontsize #-1.5 smaller }
Used properties:
-
baseline-skip
(2) -
word-space
(1) -
font-size
(0)
-
-
\huge
arg (markup) -
Set font size to +2.
\markup { default \hspace #2 \huge huge }
-
\italic
arg (markup) -
Use italic
font-shape
for arg.\markup { default \hspace #2 \italic italic }
-
\large
arg (markup) -
Set font size to +1.
\markup { default \hspace #2 \large large }
-
\larger
arg (markup) -
Increase the font size relative to the current setting.
\markup { default \hspace #2 \larger larger }
-
\magnify
sz (number) arg (markup) -
Set the font magnification for its argument. In the following example, the middle A is 10% larger:
A \magnify #1.1 { A } A
Note: Magnification only works if a font name is explicitly selected. Use
\fontsize
otherwise.\markup { default \hspace #2 \magnify #1.5 { 50% larger } }
-
\medium
arg (markup) -
Switch to medium font-series (in contrast to bold).
\markup { \bold { some bold text \hspace #2 \medium { medium font series } \hspace #2 bold again } }
-
\normal-size-sub
arg (markup) -
Set arg in subscript with a normal font size.
\markup { default \normal-size-sub { subscript in standard size } }
Used properties:
-
baseline-skip
-
-
\normal-size-super
arg (markup) -
Set arg in superscript with a normal font size.
\markup { default \normal-size-super { superscript in standard size } }
Used properties:
-
baseline-skip
-
-
\normal-text
arg (markup) -
Set all font related properties (except the size) to get the default normal text font, no matter what font was used earlier.
\markup { \huge \bold \sans \caps { Some text with font overrides \hspace #2 \normal-text { Default text, same font-size } \hspace #2 More text as before } }
-
\normalsize
arg (markup) -
Set font size to default.
\markup { \teeny { this is very small \hspace #2 \normalsize { normal size } \hspace #2 teeny again } }
-
\number
arg (markup) -
Set font family to
number
, which yields the font used for time signatures and fingerings. This font contains numbers and some punctuation; it has no letters.\markup { \number { 0 1 2 3 4 5 6 7 8 9 . , } }
-
\roman
arg (markup) -
Set font family to
roman
.\markup { \sans \bold { sans serif, bold \hspace #2 \roman { text in roman font family } \hspace #2 return to sans } }
-
\sans
arg (markup) -
Switch to the sans serif font family.
\markup { default \hspace #2 \sans { sans serif } }
-
\simple
str (string) -
A simple text string;
\markup { foo }
is equivalent with\markup { \simple #"foo" }
.Note: for creating standard text markup or defining new markup commands, the use of
\simple
is unnecessary.\markup { \simple #"simple" \simple #"text" \simple #"strings" }
-
\small
arg (markup) -
Set font size to -1.
\markup { default \hspace #2 \small small }
-
\smallCaps
arg (markup) -
Emit arg as small caps.
Note:
\smallCaps
does not support accented characters.\markup { default \hspace #2 \smallCaps { Text in small caps } }
-
\smaller
arg (markup) -
Decrease the font size relative to the current setting.
\markup { \fontsize #3.5 { some large text \hspace #2 \smaller { a bit smaller } \hspace #2 more large text } }
-
\sub
arg (markup) -
Set arg in subscript.
\markup { \concat { H \sub { 2 } O } }
Used properties:
-
baseline-skip
-
font-size
(0)
-
-
\super
arg (markup) -
Set arg in superscript.
\markup { E = \concat { mc \super 2 } }
Used properties:
-
baseline-skip
-
font-size
(0)
-
-
\teeny
arg (markup) -
Set font size to -3.
\markup { default \hspace #2 \teeny teeny }
-
\text
arg (markup) -
Use a text font instead of music symbol or music alphabet font.
\markup { \number { 1, 2, \text { three, four, } 5 } }
-
\tiny
arg (markup) -
Set font size to -2.
\markup { default \hspace #2 \tiny tiny }
-
\typewriter
arg (markup) -
Use
font-family
typewriter for arg.\markup { default \hspace #2 \typewriter typewriter }
-
\underline
arg (markup) -
Underline arg. Looks at
thickness
to determine line thickness and y-offset.\markup { default \hspace #2 \override #'(thickness . 2) \underline { underline } }
Used properties:
-
thickness
(1)
-
-
\upright
arg (markup) -
Set
font-shape
toupright
. This is the opposite ofitalic
.\markup { \italic { italic text \hspace #2 \upright { upright text } \hspace #2 italic again } }
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Font ] | [ Nach oben : Text markup commands ] | [ Graphic > ] |
B.8.2 Align
-
\center-align
arg (markup) -
Align
arg
to its X center.\markup { \column { one \center-align two three } }
-
\center-column
args (list of markups) -
Put
args
in a centered column.\markup { \center-column { one two three } }
Used properties:
-
baseline-skip
-
-
\column
args (list of markups) -
Stack the markups in args vertically. The property
baseline-skip
determines the space between markups in args.\markup { \column { one two three } }
Used properties:
-
baseline-skip
-
-
\combine
arg1 (markup) arg2 (markup) -
Print two markups on top of each other.
Note:
\combine
cannot take a list of markups enclosed in curly braces as an argument; the follow example will not compile:\combine { a list }
\markup { \fontsize #5 \override #'(thickness . 2) \combine \draw-line #'(0 . 4) \arrow-head #Y #DOWN ##f }
-
\concat
args (list of markups) -
Concatenate args in a horizontal line, without spaces in between. Strings and simple markups are concatenated on the input level, allowing ligatures. For example,
\concat { "f" \simple #"i" }
is equivalent to"fi"
.\markup { \concat { one two three } }
-
\dir-column
args (list of markups) -
Make a column of args, going up or down, depending on the setting of the
direction
layout property.\markup { \override #`(direction . ,UP) { \dir-column { going up } } \hspace #1 \dir-column { going down } \hspace #1 \override #'(direction . 1) { \dir-column { going up } } }
Used properties:
-
baseline-skip
-
direction
-
-
\fill-line
args (list of markups) -
Put markups in a horizontal line of width line-width. The markups are spaced or flushed to fill the entire line. If there are no arguments, return an empty stencil.
\markup { \column { \fill-line { Words evenly spaced across the page } \null \fill-line { \line { Text markups } \line { \italic { evenly spaced } } \line { across the page } } } }
Used properties:
-
line-width
(#f) -
word-space
(1) -
text-direction
(1)
-
-
\general-align
axis (integer) dir (number) arg (markup) -
Align arg in axis direction to the dir side.
\markup { \column { one \general-align #X #LEFT two three \null one \general-align #X #CENTER two three \null \line { one \general-align #Y #UP two three } \null \line { one \general-align #Y #3.2 two three } } }
-
\halign
dir (number) arg (markup) -
Set horizontal alignment. If dir is
-1
, then it is left-aligned, while+1
is right. Values in between interpolate alignment accordingly.\markup { \column { one \halign #LEFT two three \null one \halign #CENTER two three \null one \halign #RIGHT two three \null one \halign #-5 two three } }
-
\hcenter-in
length (number) arg (markup) -
Center arg horizontally within a box of extending length/2 to the left and right.
\new StaffGroup << \new Staff { \set Staff.instrumentName = \markup { \hcenter-in #12 Oboe } c''1 } \new Staff { \set Staff.instrumentName = \markup { \hcenter-in #12 Bassoon } \clef tenor c'1 } >>
-
\hspace
amount (number) -
Create an invisible object taking up horizontal space amount.
\markup { one \hspace #2 two \hspace #8 three }
-
\justify-field
symbol (symbol) -
Justify the data which has been assigned to symbol.
\header { title = "My title" description = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat." } \paper { bookTitleMarkup = \markup { \column { \fill-line { \fromproperty #'header:title } \null \justify-field #'header:description } } } \markup { \null }
-
\justify
args (list of markups) -
Like
\wordwrap
, but with lines stretched to justify the margins. Use\override #'(line-width . X)
to set the line width; X is the number of staff spaces.\markup { \justify { Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. } }
Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f) -
baseline-skip
-
-
\justify-string
arg (string) -
Justify a string. Paragraphs may be separated with double newlines
\markup { \override #'(line-width . 40) \justify-string #"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum" }
Used properties:
-
text-direction
(1) -
word-space
-
line-width
-
baseline-skip
-
-
\left-align
arg (markup) -
Align arg on its left edge.
\markup { \column { one \left-align two three } }
-
\left-column
args (list of markups) -
Put
args
in a left-aligned column.\markup { \left-column { one two three } }
Used properties:
-
baseline-skip
-
-
\line
args (list of markups) -
Put args in a horizontal line. The property
word-space
determines the space between markups in args.\markup { \line { one two three } }
Used properties:
-
text-direction
(1) -
word-space
-
-
\lower
amount (number) arg (markup) -
Lower arg by the distance amount. A negative amount indicates raising; see also
\raise
.\markup { one \lower #3 two three }
-
\pad-around
amount (number) arg (markup) -
Add padding amount all around arg.
\markup { \box { default } \hspace #2 \box { \pad-around #0.5 { padded } } }
-
\pad-markup
amount (number) arg (markup) -
Add space around a markup object.
\markup { \box { default } \hspace #2 \box { \pad-markup #1 { padded } } }
-
\pad-to-box
x-ext (pair of numbers) y-ext (pair of numbers) arg (markup) -
Make arg take at least x-ext, y-ext space.
\markup { \box { default } \hspace #4 \box { \pad-to-box #'(0 . 10) #'(0 . 3) { padded } } }
-
\pad-x
amount (number) arg (markup) -
Add padding amount around arg in the X direction.
\markup { \box { default } \hspace #4 \box { \pad-x #2 { padded } } }
-
\put-adjacent
axis (integer) dir (direction) arg1 (markup) arg2 (markup) -
Put arg2 next to arg1, without moving arg1.
-
\raise
amount (number) arg (markup) -
Raise arg by the distance amount. A negative amount indicates lowering, see also
\lower
.The argument to
\raise
is the vertical displacement amount, measured in (global) staff spaces.\raise
and\super
raise objects in relation to their surrounding markups.If the text object itself is positioned above or below the staff, then
\raise
cannot be used to move it, since the mechanism that positions it next to the staff cancels any shift made with\raise
. For vertical positioning, use thepadding
and/orextra-offset
properties.\markup { C \small \bold \raise #1.0 9/7+ }
-
\right-align
arg (markup) -
Align arg on its right edge.
\markup { \column { one \right-align two three } }
-
\right-column
args (list of markups) -
Put
args
in a right-aligned column.\markup { \right-column { one two three } }
Used properties:
-
baseline-skip
-
-
\rotate
ang (number) arg (markup) -
Rotate object with ang degrees around its center.
\markup { default \hspace #2 \rotate #45 \line { rotated 45° } }
-
\translate
offset (pair of numbers) arg (markup) -
Translate arg relative to its surroundings. offset is a pair of numbers representing the displacement in the X and Y axis.
\markup { * \translate #'(2 . 3) \line { translated two spaces right, three up } }
-
\translate-scaled
offset (pair of numbers) arg (markup) -
Translate arg by offset, scaling the offset by the
font-size
.\markup { \fontsize #5 { * \translate #'(2 . 3) translate \hspace #2 * \translate-scaled #'(2 . 3) translate-scaled } }
Used properties:
-
font-size
(0)
-
-
\vcenter
arg (markup) -
Align
arg
to its Y center.\markup { one \vcenter two three }
-
\wordwrap-field
symbol (symbol) -
Wordwrap the data which has been assigned to symbol.
\header { title = "My title" description = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat." } \paper { bookTitleMarkup = \markup { \column { \fill-line { \fromproperty #'header:title } \null \wordwrap-field #'header:descr } } } \markup { \null }
-
\wordwrap
args (list of markups) -
Simple wordwrap. Use
\override #'(line-width . X)
to set the line width, where X is the number of staff spaces.\markup { \wordwrap { Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. } }
Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f) -
baseline-skip
-
-
\wordwrap-string
arg (string) -
Wordwrap a string. Paragraphs may be separated with double newlines.
\markup { \override #'(line-width . 40) \wordwrap-string #"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum" }
Used properties:
-
text-direction
(1) -
word-space
-
line-width
-
baseline-skip
-
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Align ] | [ Nach oben : Text markup commands ] | [ Music > ] |
B.8.3 Graphic
-
\arrow-head
axis (integer) dir (direction) filled (boolean) -
Produce an arrow head in specified direction and axis. Use the filled head if filled is specified.
\markup { \fontsize #5 { \general-align #Y #DOWN { \arrow-head #Y #UP ##t \arrow-head #Y #DOWN ##f \hspace #2 \arrow-head #X #RIGHT ##f \arrow-head #X #LEFT ##f } } }
-
\beam
width (number) slope (number) thickness (number) -
Create a beam with the specified parameters.
\markup { \beam #5 #1 #2 }
-
\bracket
arg (markup) -
Draw vertical brackets around arg.
\markup { \bracket { \note #"2." #UP } }
-
\circle
arg (markup) -
Draw a circle around arg. Use
thickness
,circle-padding
andfont-size
properties to determine line thickness and padding around the markup.\markup { \circle { Hi } }
Used properties:
-
circle-padding
(0.2) -
font-size
(0) -
thickness
(1)
-
-
\draw-circle
radius (number) thickness (number) filled (boolean) -
A circle of radius radius and thickness thickness, optionally filled.
\markup { \draw-circle #2 #0.5 ##f \hspace #2 \draw-circle #2 #0 ##t }
-
\draw-line
dest (pair of numbers) -
A simple line.
\markup { \draw-line #'(4 . 4) \override #'(thickness . 5) \draw-line #'(-3 . 0) }
Used properties:
-
thickness
(1)
-
-
\epsfile
axis (number) size (number) file-name (string) -
Inline an EPS image. The image is scaled along axis to size.
\markup { \general-align #Y #DOWN { \epsfile #X #20 #"context-example.eps" \epsfile #Y #20 #"context-example.eps" } }
-
\filled-box
xext (pair of numbers) yext (pair of numbers) blot (number) -
Draw a box with rounded corners of dimensions xext and yext. For example,
\filled-box #'(-.3 . 1.8) #'(-.3 . 1.8) #0
creates a box extending horizontally from -0.3 to 1.8 and vertically from -0.3 up to 1.8, with corners formed from a circle of diameter 0 (i.e., sharp corners).
\markup { \filled-box #'(0 . 4) #'(0 . 4) #0 \filled-box #'(0 . 2) #'(-4 . 2) #0.4 \filled-box #'(1 . 8) #'(0 . 7) #0.2 \with-color #white \filled-box #'(-4.5 . -2.5) #'(3.5 . 5.5) #0.7 }
-
\hbracket
arg (markup) -
Draw horizontal brackets around arg.
\markup { \hbracket { \line { one two three } } }
-
\postscript
str (string) -
This inserts str directly into the output as a PostScript command string.
eyeglassesps = #" 0.15 setlinewidth -0.9 0 translate 1.1 1.1 scale 1.2 0.7 moveto 0.7 0.7 0.5 0 361 arc stroke 2.20 0.70 0.50 0 361 arc stroke 1.45 0.85 0.30 0 180 arc stroke 0.20 0.70 moveto 0.80 2.00 lineto 0.92 2.26 1.30 2.40 1.15 1.70 curveto stroke 2.70 0.70 moveto 3.30 2.00 lineto 3.42 2.26 3.80 2.40 3.65 1.70 curveto stroke" eyeglasses = \markup { \with-dimensions #'(0 . 4.4) #'(0 . 2.5) \postscript #eyeglassesps } \relative c'' { c2^\eyeglasses a2_\eyeglasses }
-
\rounded-box
arg (markup) -
Draw a box with rounded corners around arg. Looks at
thickness
,box-padding
andfont-size
properties to determine line thickness and padding around the markup; thecorner-radius
property makes it possible to define another shape for the corners (default is 1).c4^\markup { \rounded-box { Overtura } } c,8. c16 c4 r
Used properties:
-
box-padding
(0.5) -
font-size
(0) -
corner-radius
(1) -
thickness
(1)
-
-
\triangle
filled (boolean) -
A triangle, either filled or empty.
\markup { \triangle ##t \hspace #2 \triangle ##f }
Used properties:
-
baseline-skip
(2) -
font-size
(0) -
thickness
(0.1)
-
-
\with-url
url (string) arg (markup) -
Add a link to URL url around arg. This only works in the PDF backend.
\markup { \with-url #"http://lilypond.org/web/" { LilyPond ... \italic { music notation for everyone } } }
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Graphic ] | [ Nach oben : Text markup commands ] | [ Instrument Specific Markup > ] |
B.8.4 Music
-
\doubleflat
-
Draw a double flat symbol.
\markup { \doubleflat }
-
\doublesharp
-
Draw a double sharp symbol.
\markup { \doublesharp }
-
\flat
-
Draw a flat symbol.
\markup { \flat }
-
\musicglyph
glyph-name (string) -
glyph-name is converted to a musical symbol; for example,
\musicglyph #"accidentals.natural"
selects the natural sign from the music font. See The Feta font for a complete listing of the possible glyphs.\markup { \musicglyph #"f" \musicglyph #"rests.2" \musicglyph #"clefs.G_change" }
-
\natural
-
Draw a natural symbol.
\markup { \natural }
-
\note-by-number
log (number) dot-count (number) dir (number) -
Construct a note symbol, with stem. By using fractional values for dir, longer or shorter stems can be obtained.
\markup { \note-by-number #3 #0 #DOWN \hspace #2 \note-by-number #1 #2 #0.8 }
Used properties:
-
style
(’()) -
font-size
(0)
-
-
\note
duration (string) dir (number) -
This produces a note with a stem pointing in dir direction, with the duration for the note head type and augmentation dots. For example,
\note #"4." #-0.75
creates a dotted quarter note, with a shortened down stem.\markup { \override #'(style . cross) { \note #"4.." #UP } \hspace #2 \note #"breve" #0 }
Used properties:
-
style
(’()) -
font-size
(0)
-
-
\score
score (unknown) -
Inline an image of music.
\markup { \score { \new PianoStaff << \new Staff \relative c' { \key f \major \time 3/4 \mark \markup { Allegro } f2\p( a4) c2( a4) bes2( g'4) f8( e) e4 r } \new Staff \relative c { \clef bass \key f \major \time 3/4 f8( a c a c a f c' es c es c) f,( bes d bes d bes) f( g bes g bes g) } >> \layout { indent = 0.0\cm \context { \Score \override RehearsalMark #'break-align-symbols = #'(time-signature key-signature) \override RehearsalMark #'self-alignment-X = #LEFT } \context { \Staff \override TimeSignature #'break-align-anchor-alignment = #LEFT } } } }
-
\semiflat
-
Draw a semiflat symbol.
\markup { \semiflat }
-
\semisharp
-
Draw a semisharp symbol.
\markup { \semisharp }
-
\sesquiflat
-
Draw a 3/2 flat symbol.
\markup { \sesquiflat }
-
\sesquisharp
-
Draw a 3/2 sharp symbol.
\markup { \sesquisharp }
-
\sharp
-
Draw a sharp symbol.
\markup { \sharp }
-
\tied-lyric
str (string) -
Like simple-markup, but use tie characters for ‚~‘ tilde symbols.
\markup { \tied-lyric #"Lasciate~i monti" }
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Music ] | [ Nach oben : Text markup commands ] | [ Other > ] |
B.8.5 Instrument Specific Markup
-
\fret-diagram
definition-string (string) -
Make a (guitar) fret diagram. For example, say
\markup \fret-diagram #"s:0.75;6-x;5-x;4-o;3-2;2-3;1-2;"
for fret spacing 3/4 of staff space, D chord diagram
Syntax rules for definition-string:
- - Diagram items are separated by semicolons.
- -
Possible items:
-
s:
number – Set the fret spacing of the diagram (in staff spaces). Default: 1. -
t:
number – Set the line thickness (in staff spaces). Default: 0.05. -
h:
number – Set the height of the diagram in frets. Default: 4. -
w:
number – Set the width of the diagram in strings. Default: 6. -
f:
number – Set fingering label type (0 = none, 1 = in circle on string, 2 = below string). Default: 0. -
d:
number – Set radius of dot, in terms of fret spacing. Default: 0.25. -
p:
number – Set the position of the dot in the fret space. 0.5 is centered; 1 is on lower fret bar, 0 is on upper fret bar. Default: 0.6. -
c:
string1-
string2-
fret – Include a barre mark from string1 to string2 on fret. -
string
-
fret – Place a dot on string at fret. If fret is ‘o’, string is identified as open. If fret is ‘x’, string is identified as muted. -
string
-
fret-
fingering – Place a dot on string at fret, and label with fingering as defined by thef:
code.
-
- - Note: There is no limit to the number of fret indications per string.
Used properties:
-
thickness
(0.5) -
fret-diagram-details
-
size
(1.0) -
align-dir
(-0.4)
-
\fret-diagram-terse
definition-string (string) -
Make a fret diagram markup using terse string-based syntax.
Here is an example
\markup \fret-diagram-terse #"x;x;o;2;3;2;"
for a D chord diagram.
Syntax rules for definition-string:
- Strings are terminated by semicolons; the number of semicolons is the number of strings in the diagram.
- Mute strings are indicated by ‘x’.
- Open strings are indicated by ‘o’.
- A number indicates a fret indication at that fret.
- If there are multiple fret indicators desired on a string, they should be separated by spaces.
-
Fingerings are given by following the fret number with a
-
, followed by the finger indicator, e.g. ‘3-2’ for playing the third fret with the second finger. -
Where a barre indicator is desired, follow the fret (or fingering) symbol
with
-(
to start a barre and-)
to end the barre.
Used properties:
-
thickness
(0.5) -
fret-diagram-details
-
size
(1.0) -
align-dir
(-0.4)
-
\fret-diagram-verbose
marking-list (pair) -
Make a fret diagram containing the symbols indicated in marking-list.
For example,
\markup \fret-diagram-verbose #'((mute 6) (mute 5) (open 4) (place-fret 3 2) (place-fret 2 3) (place-fret 1 2))
produces a standard D chord diagram without fingering indications.
Possible elements in marking-list:
-
(mute string-number)
Place a small ‚x‘ at the top of string string-number.
-
(open string-number)
Place a small ‚o‘ at the top of string string-number.
-
(barre start-string end-string fret-number)
Place a barre indicator (much like a tie) from string start-string to string end-string at fret fret-number.
-
(capo fret-number)
Place a capo indicator (a large solid bar) across the entire fretboard at fret location fret-number. Also, set fret fret-number to be the lowest fret on the fret diagram.
-
(place-fret string-number fret-number finger-value)
Place a fret playing indication on string string-number at fret fret-number with an optional fingering label finger-value. By default, the fret playing indicator is a solid dot. This can be changed by setting the value of the variable dot-color. If the finger part of the
place-fret
element is present, finger-value will be displayed according to the setting of the variable finger-code. There is no limit to the number of fret indications per string.
Used properties:
-
thickness
(0.5) -
fret-diagram-details
-
size
(1.0) -
align-dir
(-0.4)
-
-
\harp-pedal
definition-string (string) -
Make a harp pedal diagram.
Possible elements in definition-string:
-
^
pedal is up
-
-
pedal is neutral
-
v
pedal is down
-
|
vertical divider line
-
o
the following pedal should be circled (indicating a change)
The function also checks if the string has the typical form of three pedals, then the divider and then the remaining four pedals. If not it prints out a warning. However, in any case, it will also print each symbol in the order as given. This means you can place the divider (even multiple dividers) anywhere you want, but you’ll have to live with the warnings.
The appearance of the diagram can be tweaked inter alia using the size property of the TextScript grob (
\override Voice.TextScript #'size = #0.3
) for the overall, the thickness property (\override Voice.TextScript #'thickness = #3
) for the line thickness of the horizontal line and the divider. The remaining configuration (box sizes, offsets and spaces) is done by the harp-pedal-details list of properties (\override Voice.TextScript #'harp-pedal-details #'box-width = #1
). It contains the following settings:box-offset
(vertical shift of the box center for up/down pedals),box-width
,box-height
,space-before-divider
(the spacing between two boxes before the divider) andspace-after-divider
(box spacing after the divider).\markup \harp-pedal #"^-v|--ov^"
Used properties:
-
thickness
(0.5) -
harp-pedal-details
-
size
(1.0)
-
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Instrument Specific Markup ] | [ Nach oben : Text markup commands ] | [ Text markup list commands > ] |
B.8.6 Other
-
\backslashed-digit
num (integer) -
A feta number, with backslash. This is for use in the context of figured bass notation.
\markup { \backslashed-digit #5 \hspace #2 \override #'(thickness . 3) \backslashed-digit #7 }
Used properties:
-
thickness
(1.6) -
font-size
(0)
-
-
\char
num (integer) -
Produce a single character. Characters encoded in hexadecimal format require the prefix
#x
.\markup { \char #65 \char ##x00a9 }
-
\fraction
arg1 (markup) arg2 (markup) -
Make a fraction of two markups.
\markup { π ≈ \fraction 355 113 }
Used properties:
-
font-size
(0)
-
-
\fromproperty
symbol (symbol) -
Read the symbol from property settings, and produce a stencil from the markup contained within. If symbol is not defined, it returns an empty markup.
\header { myTitle = "myTitle" title = \markup { from \italic \fromproperty #'header:myTitle } } \markup { \null }
-
\lookup
glyph-name (string) -
Lookup a glyph by name.
\markup { \override #'(font-encoding . fetaBraces) { \lookup #"brace200" \hspace #2 \rotate #180 \lookup #"brace180" } }
-
\markalphabet
num (integer) -
Make a markup letter for num. The letters start with A to Z and continue with double letters.
\markup { \markalphabet #8 \hspace #2 \markalphabet #26 }
-
\markletter
num (integer) -
Make a markup letter for num. The letters start with A to Z (skipping letter I), and continue with double letters.
\markup { \markletter #8 \hspace #2 \markletter #26 }
-
\null
-
An empty markup with extents of a single point.
\markup { \null }
-
\on-the-fly
procedure (symbol) arg (markup) -
Apply the procedure markup command to arg. procedure should take a single argument.
-
\override
new-prop (pair) arg (markup) -
Add the argument new-prop to the property list. Properties may be any property supported by font-interface, text-interface and instrument-specific-markup-interface.
\markup { \line { \column { default baseline-skip } \hspace #2 \override #'(baseline-skip . 4) { \column { increased baseline-skip } } } }
-
\page-ref
label (symbol) gauge (markup) default (markup) -
Reference to a page number. label is the label set on the referenced page (using the
\label
command), gauge a markup used to estimate the maximum width of the page number, and default the value to display when label is not found. -
\slashed-digit
num (integer) -
A feta number, with slash. This is for use in the context of figured bass notation.
\markup { \slashed-digit #5 \hspace #2 \override #'(thickness . 3) \slashed-digit #7 }
Used properties:
-
thickness
(1.6) -
font-size
(0)
-
-
\stencil
stil (unknown) -
Use a stencil as markup.
\markup { \stencil #(make-circle-stencil 2 0 #t) }
-
\strut
-
Create a box of the same height as the space in the current font.
-
\transparent
arg (markup) -
Make arg transparent.
\markup { \transparent { invisible text } }
-
\verbatim-file
name (string) -
Read the contents of file name, and include it verbatim.
\markup { \verbatim-file #"simple.ly" }
-
\whiteout
arg (markup) -
Provide a white background for arg.
\markup { \combine \filled-box #'(-1 . 10) #'(-3 . 4) #1 \whiteout whiteout }
-
\with-color
color (list) arg (markup) -
Draw arg in color specified by color.
\markup { \with-color #red red \hspace #2 \with-color #green green \hspace #2 \with-color #blue blue }
-
\with-dimensions
x (pair of numbers) y (pair of numbers) arg (markup) -
Set the dimensions of arg to x and y.
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Other ] | [ Nach oben : Notation manual tables ] | [ List of articulations > ] |
B.9 Text markup list commands
The following commands can all be used with \markuplines
.
-
\column-lines
args (list of markups) -
Like
\column
, but return a list of lines instead of a single markup.baseline-skip
determines the space between each markup in args.Used properties:
-
baseline-skip
-
-
\justified-lines
args (list of markups) -
Like
\justify
, but return a list of lines instead of a single markup. Use\override-lines #'(line-width . X)
to set the line width; X is the number of staff spaces.Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f) -
baseline-skip
-
-
\override-lines
new-prop (pair) args (list of markups) -
Like
\override
, for markup lists. -
\wordwrap-internal
justify (boolean) args (list of markups) -
Internal markup list command used to define
\justify
and\wordwrap
.Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f)
-
-
\wordwrap-lines
args (list of markups) -
Like
\wordwrap
, but return a list of lines instead of a single markup. Use\override-lines #'(line-width . X)
to set the line width, where X is the number of staff spaces.Used properties:
-
text-direction
(1) -
word-space
-
line-width
(#f) -
baseline-skip
-
-
\wordwrap-string-internal
justify (boolean) arg (string) -
Internal markup list command used to define
\justify-string
and\wordwrap-string
.Used properties:
-
text-direction
(1) -
word-space
-
line-width
-
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Text markup list commands ] | [ Nach oben : Notation manual tables ] | [ Percussion notes > ] |
B.10 List of articulations
Hier ist eine Liste, die alle möglichen Zeichen darstellt:
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < List of articulations ] | [ Nach oben : Notation manual tables ] | [ All context properties > ] |
B.11 Percussion notes
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Percussion notes ] | [ Nach oben : Notation manual tables ] | [ Layout properties > ] |
B.12 All context properties
-
aDueText
(markup) Text to print at a unisono passage.
-
alignAboveContext
(string) Where to insert newly created context in vertical alignment.
-
alignBassFigureAccidentals
(boolean) If true, then the accidentals are aligned in bass figure context.
-
alignBelowContext
(string) Where to insert newly created context in vertical alignment.
-
associatedVoice
(string) Name of the
Voice
that has the melody for thisLyrics
line.-
autoAccidentals
(list) List of different ways to typeset an accidental.
For determining when to print an accidental, several different rules are tried. The rule that gives the highest number of accidentals is used.
Each entry in the list is either a symbol or a procedure.
- symbol
The symbol is the name of the context in which the following rules are to be applied. For example, if context is Score then all staves share accidentals, and if context is Staff then all voices in the same staff share accidentals, but staves do not.
- procedure
The procedure represents an accidental rule to be applied to the previously specified context.
The procedure takes the following arguments:
-
context
The current context to which the rule should be applied.
-
pitch
The pitch of the note to be evaluated.
-
barnum
The current bar number.
-
measurepos
The current measure position.
The procedure returns a pair of booleans. The first states whether an extra natural should be added. The second states whether an accidental should be printed.
(#t . #f)
does not make sense.-
-
autoBeamCheck
(procedure) A procedure taking three arguments, context, dir [start/stop (-1 or 1)], and test [shortest note in the beam]. A non-
#f
return value starts or stops the auto beam.-
autoBeamSettings
(list) Specifies when automatically generated beams should begin and end. See behavior Setting automatic beam behavior for more information.
-
autoBeaming
(boolean) If set to true then beams are generated automatically.
-
autoCautionaries
(list) List similar to
autoAccidentals
, but it controls cautionary accidentals rather than normal ones. Both lists are tried, and the one giving the most accidentals wins. In case of draw, a normal accidental is typeset.-
automaticBars
(boolean) If set to false then bar lines will not be printed automatically; they must be explicitly created with a
\bar
command. Unlike the\cadenzaOn
keyword, measures are still counted. Bar line generation will resume according to that count if this property is unset.-
barAlways
(boolean) If set to true a bar line is drawn after each note.
-
barCheckSynchronize
(boolean) If true then reset
measurePosition
when finding a bar check.-
barNumberVisibility
(procedure) A Procedure that takes an integer and returns whether the corresponding bar number should be printed.
-
bassFigureFormatFunction
(procedure) A procedure that is called to produce the formatting for a
BassFigure
grob. It takes a list ofBassFigureEvent
s, a context, and the grob to format.-
bassStaffProperties
(list) An alist of property settings to apply for the down staff of
PianoStaff
. Used by\autochange
.-
beatGrouping
(list) A list of beatgroups, e.g., in 5/8 time
'(2 3)
.-
beatLength
(moment) The length of one beat in this time signature.
-
chordChanges
(boolean) Only show changes in chords scheme?
-
chordNameExceptions
(list) An alist of chord exceptions. Contains
(chord . markup)
entries.-
chordNameExceptionsFull
(list) An alist of full chord exceptions. Contains
(chord . markup)
entries.-
chordNameExceptionsPartial
(list) An alist of partial chord exceptions. Contains
(chord . (prefix-markup suffix-markup))
entries.-
chordNameFunction
(procedure) The function that converts lists of pitches to chord names.
-
chordNameSeparator
(markup) The markup object used to separate parts of a chord name.
-
chordNoteNamer
(procedure) A function that converts from a pitch object to a text markup. Used for single pitches.
-
chordPrefixSpacer
(number) The space added between the root symbol and the prefix of a chord name.
-
chordRootNamer
(procedure) A function that converts from a pitch object to a text markup. Used for chords.
-
clefGlyph
(string) Name of the symbol within the music font.
-
clefOctavation
(integer) Add this much extra octavation. Values of 7 and -7 are common.
-
clefPosition
(number) Where should the center of the clef symbol go, measured in half staff spaces from the center of the staff.
-
completionBusy
(boolean) Whether a completion-note head is playing.
-
connectArpeggios
(boolean) If set, connect arpeggios across piano staff.
-
countPercentRepeats
(boolean) If set, produce counters for percent repeats.
-
createKeyOnClefChange
(boolean) Print a key signature whenever the clef is changed.
-
createSpacing
(boolean) Create
StaffSpacing
objects? Should be set for staves.-
crescendoSpanner
(symbol) The type of spanner to be used for crescendi. Available values are ‘hairpin’ and ‘text’. If unset, a hairpin crescendo is used.
-
crescendoText
(markup) The text to print at start of non-hairpin crescendo, i.e., ‘cresc.’.
-
currentBarNumber
(integer) Contains the current barnumber. This property is incremented at every bar line.
-
decrescendoSpanner
(symbol) The type of spanner to be used for decrescendi. Available values are ‘hairpin’ and ‘text’. If unset, a hairpin decrescendo is used.
-
decrescendoText
(markup) The text to print at start of non-hairpin decrescendo, i.e., ‘dim.’.
-
defaultBarType
(string) Set the default type of bar line. See
whichBar
for information on available bar types.This variable is read by Timing_translator at Score level.
-
doubleRepeatType
(string) Set the default bar line for double repeats.
-
doubleSlurs
(boolean) If set, two slurs are created for every slurred note, one above and one below the chord.
-
drumPitchTable
(hash table) A table mapping percussion instruments (symbols) to pitches.
-
drumStyleTable
(hash table) A hash table which maps drums to layout settings. Predefined values: ‘drums-style’, ‘timbales-style’, ‘congas-style’, ‘bongos-style’, and ‘percussion-style’.
The layout style is a hash table, containing the drum-pitches (e.g., the symbol ‘hihat’) as keys, and a list
(notehead-style script vertical-position)
as values.-
explicitClefVisibility
(vector) ‘break-visibility’ function for clef changes.
-
explicitKeySignatureVisibility
(vector) ‘break-visibility’ function for explicit key changes. ‘\override’ of the
break-visibility
property will set the visibility for normal (i.e., at the start of the line) key signatures.-
extendersOverRests
(boolean) Whether to continue extenders as they cross a rest.
-
extraNatural
(boolean) Whether to typeset an extra natural sign before accidentals changing from a non-natural to another non-natural.
-
figuredBassAlterationDirection
(direction) Where to put alterations relative to the main figure.
-
figuredBassCenterContinuations
(boolean) Whether to vertically center pairs of extender lines. This does not work with three or more lines.
-
figuredBassFormatter
(procedure) A routine generating a markup for a bass figure.
-
figuredBassPlusDirection
(direction) Where to put plus signs relative to the main figure.
-
fingeringOrientations
(list) A list of symbols, containing ‘left’, ‘right’, ‘up’ and/or ‘down’. This list determines where fingerings are put relative to the chord being fingered.
-
firstClef
(boolean) If true, create a new clef when starting a staff.
-
followVoice
(boolean) If set, note heads are tracked across staff switches by a thin line.
-
fontSize
(number) The relative size of all grobs in a context.
-
forbidBreak
(boolean) If set to
##t
, prevent a line break at this point.-
forceClef
(boolean) Show clef symbol, even if it has not changed. Only active for the first clef after the property is set, not for the full staff.
-
gridInterval
(moment) Interval for which to generate
GridPoint
s.-
harmonicAccidentals
(boolean) If set, harmonic notes in chords get accidentals.
-
harmonicDots
(boolean) If set, harmonic notes in dotted chords get dots.
-
highStringOne
(boolean) Whether the first string is the string with highest pitch on the instrument. This used by the automatic string selector for tablature notation.
-
ignoreBarChecks
(boolean) Ignore bar checks.
-
ignoreFiguredBassRest
(boolean) Don’t swallow rest events.
-
ignoreMelismata
(boolean) Ignore melismata for this Lyrics line.
-
implicitBassFigures
(list) A list of bass figures that are not printed as numbers, but only as extender lines.
-
implicitTimeSignatureVisibility
(vector) break visibility for the default time signature.
-
instrumentCueName
(markup) The name to print if another instrument is to be taken.
-
instrumentEqualizer
(procedure) A function taking a string (instrument name), and returning a
(min . max)
pair of numbers for the loudness range of the instrument.-
instrumentName
(markup) The name to print left of a staff. The
instrument
property labels the staff in the first system, and theinstr
property labels following lines.-
instrumentTransposition
(pitch) Define the transposition of the instrument. Its value is the pitch that sounds like middle C. This is used to transpose the MIDI output, and
\quote
s.-
internalBarNumber
(integer) Contains the current barnumber. This property is used for internal timekeeping, among others by the
Accidental_engraver
.-
keepAliveInterfaces
(list) A list of symbols, signifying grob interfaces that are worth keeping a staff with
remove-empty
set around for.-
keyAlterationOrder
(list) An alist that defines in what order alterations should be printed. The format is
(step . alter)
, where step is a number from 0 to 6 and alter from -2 (sharp) to 2 (flat).-
keySignature
(list) The current key signature. This is an alist containing
(step . alter)
or((octave . step) . alter)
, where step is a number in the range 0 to 6 and alter a fraction, denoting alteration. For alterations, use symbols, e.g.keySignature = #`((6 . ,FLAT))
.-
lyricMelismaAlignment
(direction) Alignment to use for a melisma syllable.
-
majorSevenSymbol
(markup) How should the major 7th be formatted in a chord name?
-
markFormatter
(procedure) A procedure taking as arguments the context and the rehearsal mark. It should return the formatted mark as a markup object.
-
maximumFretStretch
(number) Don’t allocate frets further than this from specified frets.
-
measureLength
(moment) Length of one measure in the current time signature.
-
measurePosition
(moment) How much of the current measure have we had. This can be set manually to create incomplete measures.
-
melismaBusyProperties
(list) A list of properties (symbols) to determine whether a melisma is playing. Setting this property will influence how lyrics are aligned to notes. For example, if set to
#'(melismaBusy beamMelismaBusy)
, only manual melismata and manual beams are considered. Possible values includemelismaBusy
,slurMelismaBusy
,tieMelismaBusy
, andbeamMelismaBusy
.-
metronomeMarkFormatter
(procedure) How to produce a metronome markup. Called with four arguments: text, duration, count and context.
-
middleCClefPosition
(number) The position of the middle C, as determined only by the clef. This can be calculated by looking at
clefPosition
andclefGlyph
.-
middleCOffset
(number) The offset of middle C from the position given by
middleCClefPosition
This is used for ottava brackets.-
middleCPosition
(number) The place of the middle C, measured in half staff-spaces. Usually determined by looking at
middleCClefPosition
andmiddleCOffset
.-
midiInstrument
(string) Name of the MIDI instrument to use.
-
midiMaximumVolume
(number) Analogous to
midiMinimumVolume
.-
midiMinimumVolume
(number) Set the minimum loudness for MIDI. Ranges from 0 to 1.
-
minimumFret
(number) The tablature auto string-selecting mechanism selects the highest string with a fret at least
minimumFret
.-
minimumPageTurnLength
(moment) Minimum length of a rest for a page turn to be allowed.
-
minimumRepeatLengthForPageTurn
(moment) Minimum length of a repeated section for a page turn to be allowed within that section.
-
noteToFretFunction
(procedure) How to produce a fret diagram. Parameters: A list of note events and a list of tabstring events.
-
ottavation
(markup) If set, the text for an ottava spanner. Changing this creates a new text spanner.
-
output
(unknown) The output produced by a score-level translator during music interpretation.
-
pedalSostenutoStrings
(list) See
pedalSustainStrings
.-
pedalSostenutoStyle
(symbol) See
pedalSustainStyle
.-
pedalSustainStrings
(list) A list of strings to print for sustain-pedal. Format is
(up updown down)
, where each of the three is the string to print when this is done with the pedal.-
pedalSustainStyle
(symbol) A symbol that indicates how to print sustain pedals:
text
,bracket
ormixed
(both).-
pedalUnaCordaStrings
(list) See
pedalSustainStrings
.-
pedalUnaCordaStyle
(symbol) See
pedalSustainStyle
.-
predefinedDiagramTable
(hash table) The hash table of predefined fret diagrams to use in FretBoards.
-
printKeyCancellation
(boolean) Print restoration alterations before a key signature change.
-
printOctaveNames
(boolean) Print octave marks for the
NoteNames
context.-
printPartCombineTexts
(boolean) Set ‚Solo‘ and ‚A due‘ texts in the part combiner?
-
proportionalNotationDuration
(moment) Global override for shortest-playing duration. This is used for switching on proportional notation.
-
recordEventSequence
(procedure) When
Recording_group_engraver
is in this context, then upon termination of the context, this function is called with current context and a list of music objects. The list of contains entries with start times, music objects and whether they are processed in this context.-
rehearsalMark
(integer) The last rehearsal mark printed.
-
repeatCommands
(list) This property is a list of commands of the form
(list 'volta x)
, where x is a string or#f
.'end-repeat
is also accepted as a command.-
repeatCountVisibility
(procedure) A procedure taking as arguments an integer and context, returning whether the corresponding percent repeat number should be printed when
countPercentRepeats
is set.-
restNumberThreshold
(number) If a multimeasure rest has more measures than this, a number is printed.
-
shapeNoteStyles
(vector) Vector of symbols, listing style for each note head relative to the tonic (qv.) of the scale.
-
shortInstrumentName
(markup) See
instrument
.-
shortVocalName
(markup) Name of a vocal line, short version.
-
skipBars
(boolean) If set to true, then skip the empty bars that are produced by multimeasure notes and rests. These bars will not appear on the printed output. If not set (the default), multimeasure notes and rests expand into their full length, printing the appropriate number of empty bars so that synchronization with other voices is preserved.
{ r1 r1*3 R1*3 \set Score.skipBars= ##t r1*3 R1*3 }
-
skipTypesetting
(boolean) If true, no typesetting is done, speeding up the interpretation phase. Useful for debugging large scores.
-
soloIIText
(markup) The text for the start of a solo for voice ‚two‘ when part-combining.
-
soloText
(markup) The text for the start of a solo when part-combining.
-
squashedPosition
(integer) Vertical position of squashing for Pitch_squash_engraver.
-
staffLineLayoutFunction
(procedure) Layout of staff lines,
traditional
, orsemitone
.-
stanza
(markup) Stanza ‚number‘ to print before the start of a verse. Use in
Lyrics
context.-
stemLeftBeamCount
(integer) Specify the number of beams to draw on the left side of the next note. Overrides automatic beaming. The value is only used once, and then it is erased.
-
stemRightBeamCount
(integer) See
stemLeftBeamCount
.-
stringNumberOrientations
(list) See
fingeringOrientations
.-
stringOneTopmost
(boolean) Whether the first string is printed on the top line of the tablature.
-
stringTunings
(list) The tablature strings tuning. It is a list of the pitch (in semitones) of each string (starting with the lower one).
-
strokeFingerOrientations
(list) See
fingeringOrientations
.-
subdivideBeams
(boolean) If set, multiple beams will be subdivided at beat positions by only drawing one beam over the beat.
-
suggestAccidentals
(boolean) If set, accidentals are typeset as cautionary suggestions over the note.
-
systemStartDelimiter
(symbol) Which grob to make for the start of the system/staff? Set to
SystemStartBrace
,SystemStartBracket
orSystemStartBar
.-
systemStartDelimiterHierarchy
(pair) A nested list, indicating the nesting of a start delimiters.
-
tablatureFormat
(procedure) A function formatting a tablature note head. Called with three arguments: string number, context and event. It returns the text as a string.
-
tempoHideNote
(boolean) Hide the note=count in tempo marks.
-
tempoText
(markup) Text for tempo marks.
-
tempoUnitCount
(number) Count for specifying tempo.
-
tempoUnitDuration
(duration) Unit for specifying tempo.
-
tempoWholesPerMinute
(moment) The tempo in whole notes per minute.
-
tieWaitForNote
(boolean) If true, tied notes do not have to follow each other directly. This can be used for writing out arpeggios.
-
timeSignatureFraction
(pair of numbers) A pair of numbers, signifying the time signature. For example,
#'(4 . 4)
is a 4/4 time signature.-
timing
(boolean) Keep administration of measure length, position, bar number, etc.? Switch off for cadenzas.
-
tonic
(pitch) The tonic of the current scale.
-
trebleStaffProperties
(list) An alist of property settings to apply for the up staff of
PianoStaff
. Used by\autochange
.-
tremoloFlags
(integer) The number of tremolo flags to add if no number is specified.
-
tupletFullLength
(boolean) If set, the tuplet is printed up to the start of the next note.
-
tupletFullLengthNote
(boolean) If set, end at the next note, otherwise end on the matter (time signatures, etc.) before the note.
-
tupletSpannerDuration
(moment) Normally, a tuplet bracket is as wide as the
\times
expression that gave rise to it. By setting this property, you can make brackets last shorter.{ \set tupletSpannerDuration = #(ly:make-moment 1 4) \times 2/3 { c8 c c c c c } }
-
useBassFigureExtenders
(boolean) Whether to use extender lines for repeated bass figures.
-
verticallySpacedContexts
(list) List of symbols, containing context names whose vertical axis groups should be taken into account for vertical spacing of systems.
-
vocalName
(markup) Name of a vocal line.
-
voltaSpannerDuration
(moment) This specifies the maximum duration to use for the brackets printed for
\alternative
. This can be used to shrink the length of brackets in the situation where one alternative is very large.-
whichBar
(string) This property is read to determine what type of bar line to create.
Example:
\set Staff.whichBar = "|:"
This will create a start-repeat bar in this staff only. Valid values are described in bar-line-interface.
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < All context properties ] | [ Nach oben : Notation manual tables ] | [ Identifiers > ] |
B.13 Layout properties
-
X-extent
(pair of numbers) Hard coded extent in X direction.
-
X-offset
(number) The horizontal amount that this object is moved relative to its X-parent.
-
Y-extent
(pair of numbers) Hard coded extent in Y direction.
-
Y-offset
(number) The vertical amount that this object is moved relative to its Y-parent.
-
add-stem-support
(boolean) If set, the
Stem
object is included in this script’s support.-
after-line-breaking
(boolean) Dummy property, used to trigger callback for
after-line-breaking
.-
align-dir
(direction) Which side to align?
-1
: left side,0
: around center of width,1
: right side.-
allow-loose-spacing
(boolean) If set, column can be detached from main spacing.
-
allow-span-bar
(boolean) If false, no inter-staff bar line will be created below this bar line.
-
alteration
(number) Alteration numbers for accidental.
-
alteration-alist
(list) List of
(pitch . accidental)
pairs for key signature.-
annotation
(string) Annotate a grob for debug purposes.
-
arpeggio-direction
(direction) If set, put an arrow on the arpeggio squiggly line.
-
arrow-length
(number) Arrow length.
-
arrow-width
(number) Arrow width.
-
auto-knee-gap
(dimension, in staff space) If a gap is found between note heads where a horizontal beam fits that is larger than this number, make a kneed beam.
-
average-spacing-wishes
(boolean) If set, the spacing wishes are averaged over staves.
-
avoid-note-head
(boolean) If set, the stem of a chord does not pass through all note heads, but starts at the last note head.
-
avoid-slur
(symbol) Method of handling slur collisions. Choices are
around
,inside
,outside
. If unset, scripts and slurs ignore each other.around
only moves the script if there is a collision;outside
always moves the script.-
axes
(list) List of axis numbers. In the case of alignment grobs, this should contain only one number.
-
bar-size
(dimension, in staff space) The size of a bar line.
-
base-shortest-duration
(moment) Spacing is based on the shortest notes in a piece. Normally, pieces are spaced as if notes at least as short as this are present.
-
baseline-skip
(dimension, in staff space) Distance between base lines of multiple lines of text.
-
beam-thickness
(dimension, in staff space) Beam thickness, measured in
staff-space
units.-
beam-width
(dimension, in staff space) Width of the tremolo sign.
-
beamed-stem-shorten
(list) How much to shorten beamed stems, when their direction is forced. It is a list, since the value is different depending on the number of flags and beams.
-
beaming
(pair) Pair of number lists. Each number list specifies which beams to make.
0
is the central beam,1
is the next beam toward the note, etc. This information is used to determine how to connect the beaming patterns from stem to stem inside a beam.-
beamlet-default-length
(pair) A pair of numbers. The first number specifies the default length of a beamlet that sticks out of the left hand side of this stem; the second number specifies the default length of the beamlet to the right. The actual length of a beamlet is determined by taking either the default length or the length specified by
beamlet-max-length-proportion
, whichever is smaller.-
beamlet-max-length-proportion
(pair) The maximum length of a beamlet, as a proportion of the distance between two adjacent stems.
-
before-line-breaking
(boolean) Dummy property, used to trigger a callback function.
-
between-cols
(pair) Where to attach a loose column to.
-
bound-details
(list) An alist of properties for determining attachments of spanners to edges.
-
bound-padding
(number) The amount of padding to insert around spanner bounds.
-
bracket-flare
(pair of numbers) A pair of numbers specifying how much edges of brackets should slant outward. Value
0.0
means straight edges.-
bracket-visibility
(boolean or symbol) This controls the visibility of the tuplet bracket. Setting it to false prevents printing of the bracket. Setting the property to
if-no-beam
makes it print only if there is no beam associated with this tuplet bracket.-
break-align-anchor
(number) Grobs aligned to this break-align grob will have their X-offsets shifted by this number. In bar lines, for example, this is used to position grobs relative to the (visual) center of the bar line.
-
break-align-anchor-alignment
(number) Read by
ly:break-aligned-interface::calc-extent-aligned-anchor
for aligning an anchor to a grob’s extent-
break-align-orders
(vector) Defines the order in which prefatory matter (clefs, key signatures) appears. The format is a vector of length 3, where each element is one order for end-of-line, middle of line, and start-of-line, respectively. An order is a list of symbols.
For example, clefs are put after key signatures by setting
\override Score.BreakAlignment #'break-align-orders = #(make-vector 3 '(span-bar breathing-sign staff-bar key clef time-signature))
-
break-align-symbol
(symbol) This key is used for aligning and spacing breakable items.
-
break-align-symbols
(list) A list of symbols that determine which break-aligned grobs to align this to. If the grob selected by the first symbol in the list is invisible due to break-visibility, we will align to the next grob (and so on).
-
break-overshoot
(pair of numbers) How much does a broken spanner stick out of its bounds?
-
break-visibility
(vector) A vector of 3 booleans,
#(end-of-line unbroken begin-of-line)
.#t
means visible,#f
means killed.-
breakable
(boolean) Allow breaks here.
-
c0-position
(integer) An integer indicating the position of middle C.
-
circled-tip
(boolean) Put a circle at start/end of hairpins (al/del niente).
-
clip-edges
(boolean) Allow outward pointing beamlets at the edges of beams?
-
collapse-height
(dimension, in staff space) Minimum height of system start delimiter. If equal or smaller, the bracket/brace/line is removed.
-
color
(list) The color of this grob.
-
common-shortest-duration
(moment) The most common shortest note length. This is used in spacing. Enlarging this sets the score tighter.
-
concaveness
(number) A beam is concave if its inner stems are closer to the beam than the two outside stems. This number is a measure of the closeness of the inner stems. It is used for damping the slope of the beam.
-
connect-to-neighbor
(pair) Pair of booleans, indicating whether this grob looks as a continued break.
-
control-points
(list) List of offsets (number pairs) that form control points for the tie, slur, or bracket shape. For Béziers, this should list the control points of a third-order Bézier curve.
-
damping
(number) Amount of beam slope damping.
-
dash-fraction
(number) Size of the dashes, relative to
dash-period
. Should be between0.0
(no line) and1.0
(continuous line).-
dash-period
(number) The length of one dash together with whitespace. If negative, no line is drawn at all.
-
default-direction
(direction) Direction determined by note head positions.
-
digit-names
(unknown) Names for string finger digits.
-
direction
(direction) If
side-axis
is0
(or#X
), then this property determines whether the object is placed#LEFT
,#CENTER
or#RIGHT
with respect to the other object. Otherwise, it determines whether the object is placed#UP
,#CENTER
or#DOWN
. Numerical values may also be used:#UP
=1
,#DOWN
=-1
,#LEFT
=-1
,#RIGHT
=1
,#CENTER
=0
.-
dot-count
(integer) The number of dots.
-
dot-negative-kern
(number) The space to remove between a dot and a slash in percent repeat glyphs. Larger values bring the two elements closer together.
-
dot-placement-list
(list) List consisting of
(description string-number fret-number finger-number)
entries used to define fret diagrams.-
duration-log
(integer) The 2-log of the note head duration, i.e.,
0
= whole note,1
= half note, etc.-
eccentricity
(number) How asymmetrical to make a slur. Positive means move the center to the right.
-
edge-height
(pair) A pair of numbers specifying the heights of the vertical edges:
(left-height . right-height)
.-
edge-text
(pair) A pair specifying the texts to be set at the edges:
(left-text . right-text)
.-
expand-limit
(integer) Maximum number of measures expanded in church rests.
-
extra-X-extent
(pair of numbers) A grob is enlarged in X dimension by this much.
-
extra-Y-extent
(pair of numbers) A grob is enlarged in Y dimension by this much.
-
extra-dy
(number) Slope glissandi this much extra.
-
extra-offset
(pair of numbers) A pair representing an offset. This offset is added just before outputting the symbol, so the typesetting engine is completely oblivious to it. The values are measured in
staff-space
units of the staff’sStaffSymbol
.-
extra-spacing-height
(pair of numbers) In the horizontal spacing problem, we increase the height of each item by this amount (by adding the ‚car‘ to the bottom of the item and adding the ‚cdr‘ to the top of the item). In order to make a grob infinitely high (to prevent the horizontal spacing problem from placing any other grobs above or below this grob), set this to
(-inf.0 . +inf.0)
.-
extra-spacing-width
(pair of numbers) In the horizontal spacing problem, we pad each item by this amount (by adding the ‚car‘ on the left side of the item and adding the ‚cdr‘ on the right side of the item). In order to make a grob take up no horizontal space at all, set this to
(+inf.0 . -inf.0)
.-
flag
(unknown) A function returning the full flag stencil for the
Stem
, which is passed to the function as the only argument. The default ly:stem::calc-stencil function uses theflag-style
property to determine the correct glyph for the flag. By providing your own function, you can create arbitrary flags.-
flag-count
(number) The number of tremolo beams.
-
flag-style
(symbol) A symbol determining what style of flag glyph is typeset on a
Stem
. Valid options include'()
for standard flags,'mensural
and'no-flag
, which switches off the flag.-
font-encoding
(symbol) The font encoding is the broadest category for selecting a font. Currently, only lilypond’s system fonts (Emmentaler and Aybabtu) are using this property. Available values are
fetaMusic
(Emmentaler),fetaBraces
(Aybabtu),fetaNumber
(Emmentaler), andfetaDynamic
(Emmentaler).-
font-family
(symbol) The font family is the broadest category for selecting text fonts. Options include:
sans
,roman
.-
font-name
(string) Specifies a file name (without extension) of the font to load. This setting overrides selection using
font-family
,font-series
andfont-shape
.-
font-series
(symbol) Select the series of a font. Choices include
medium
,bold
,bold-narrow
, etc.-
font-shape
(symbol) Select the shape of a font. Choices include
upright
,italic
,caps
.-
font-size
(number) The font size, compared to the ‚normal‘ size.
0
is style-sheet’s normal size,-1
is smaller,+1
is bigger. Each step of 1 is approximately 12% larger; 6 steps are exactly a factor 2 larger. Fractional values are allowed.-
force-hshift
(number) This specifies a manual shift for notes in collisions. The unit is the note head width of the first voice note. This is used by note-collision-interface.
-
fraction
(pair of numbers) Numerator and denominator of a time signature object.
-
french-beaming
(boolean) Use French beaming style for this stem. The stem stops at the innermost beams.
-
fret-diagram-details
(list) An alist of detailed grob properties for fret diagrams. Each alist entry consists of a
(property . value)
pair. The properties which can be included infret-diagram-details
include the following:-
barre-type
– Type of barre indication used. Choices includecurved
,straight
, andnone
. Defaultcurved
. -
capo-thickness
– Thickness of capo indicator, in multiples of fret-space. Default value 0.5. -
dot-color
– Color of dots. Options includeblack
andwhite
. Defaultblack
. -
dot-label-font-mag
– Magnification for font used to label fret dots. Default value 1. -
dot-position
– Location of dot in fret space. Default 0.6 for dots without labels, 0.95-dot-radius
for dots with labels. -
dot-radius
– Radius of dots, in terms of fret spaces. Default value 0.425 for labeled dots, 0.25 for unlabeled dots. -
finger-code
– Code for the type of fingering indication used. Options includenone
,in-dot
, andbelow-string
. Defaultnone
for markup fret diagrams,below-string
forFretBoards
fret diagrams. -
fret-count
– The number of frets. Default 4. -
fret-label-font-mag
– The magnification of the font used to label the lowest fret number. Default 0.5. -
fret-label-vertical-offset
– The offset of the fret label from the center of the fret in direction parallel to strings. Default 0. -
label-dir
– Side to which the fret label is attached.-1
,#LEFT
, or#DOWN
for left or down;1
,#RIGHT
, or#UP
for right or up. Default#RIGHT
. -
mute-string
– Character string to be used to indicate muted string. Default"x"
. -
number-type
– Type of numbers to use in fret label. Choices includeroman-lower
,roman-upper
, andarabic
. Defaultroman-lower
. -
open-string
– Character string to be used to indicate open string. Default"o"
. -
orientation
– Orientation of fret-diagram. Options includenormal
,landscape
, andopposing-landscape
. Defaultnormal
. -
string-count
– The number of strings. Default 6. -
string-label-font-mag
– The magnification of the font used to label fingerings at the string, rather than in the dot. Default value 0.6 fornormal
orientation, 0.5 forlandscape
andopposing-landscape
. -
string-thickness-factor
– Factor for changing thickness of each string in the fret diagram. Thickness of string k is given bythickness
* (1+string-thickness-factor
) ^ (k-1). Default 0. -
top-fret-thickness
– The thickness of the top fret line, as a multiple of the standard thickness. Default value 3. -
xo-font-magnification
– Magnification used for mute and open string indicators. Default value 0.5. -
xo-padding
– Padding for open and mute indicators from top fret. Default value 0.25.
-
-
full-length-padding
(number) How much padding to use at the right side of a full-length tuplet bracket.
-
full-length-to-extent
(boolean) Run to the extent of the column for a full-length tuplet bracket.
-
full-measure-extra-space
(number) Extra space that is allocated at the beginning of a measure with only one note. This property is read from the NonMusicalPaperColumn that begins the measure.
-
full-size-change
(boolean) Don’t make a change clef smaller.
-
gap
(dimension, in staff space) Size of a gap in a variable symbol.
-
gap-count
(integer) Number of gapped beams for tremolo.
-
glyph
(string) A string determining what ‚style‘ of glyph is typeset. Valid choices depend on the function that is reading this property.
-
glyph-name-alist
(list) An alist of key-string pairs.
-
grow-direction
(direction) Crescendo or decrescendo?
-
hair-thickness
(number) Thickness of the thin line in a bar line.
-
harp-pedal-details
(list) An alist of detailed grob properties for harp pedal diagrams. Each alist entry consists of a
(property . value)
pair. The properties which can be included in harp-pedal-details include the following:-
box-offset
– Vertical shift of the center of flat/sharp pedal boxes above/below the horizontal line. Default value 0.8. -
box-width
– Width of each pedal box. Default value 0.4. -
box-height
– Height of each pedal box. Default value 1.0. -
space-before-divider
– Space between boxes before the first divider (so that the diagram can be made symmetric). Default value 0.8. -
space-after-divider
– Space between boxes after the first divider. Default value 0.8. -
circle-thickness
– Thickness (in unit of the line-thickness) of the ellipse around circled pedals. Default value 0.5. -
circle-x-padding
– Padding in X direction of the ellipse around circled pedals. Default value 0.15. -
circle-y-padding
– Padding in Y direction of the ellipse around circled pedals. Default value 0.2.
-
-
head-direction
(direction) Are the note heads left or right in a semitie?
-
height
(dimension, in staff space) Height of an object in
staff-space
units.-
height-limit
(dimension, in staff space) Maximum slur height: The longer the slur, the closer it is to this height.
-
horizontal-shift
(integer) An integer that identifies ranking of
NoteColumn
s for horizontal shifting. This is used by note-collision-interface.-
horizontal-skylines
(unknown) Two skylines, one to the left and one to the right of this grob.
-
ignore-collision
(boolean) If set, don’t do note collision resolution on this
NoteColumn
.-
implicit
(boolean) Is this an implicit bass figure?
-
inspect-index
(integer) If debugging is set, set beam and slur configuration to this index, and print the respective scores.
-
inspect-quants
(pair of numbers) If debugging is set, set beam and slur quants to this position, and print the respective scores.
-
keep-fixed-while-stretching
(boolean) A grob with this property set to true is fixed relative to the staff above it when systems are stretched.
-
keep-inside-line
(boolean) If set, this column cannot have objects sticking into the margin.
-
kern
(dimension, in staff space) Amount of extra white space to add. For bar lines, this is the amount of space after a thick line.
-
knee
(boolean) Is this beam kneed?
-
knee-spacing-correction
(number) Factor for the optical correction amount for kneed beams. Set between
0
for no correction and1
for full correction.-
labels
(list) List of labels (symbols) placed on a column
-
layer
(integer) The output layer (a value between 0 and 2): Layers define the order of printing objects. Objects in lower layers are overprinted by objects in higher layers.
-
ledger-line-thickness
(pair of numbers) The thickness of ledger lines. It is the sum of 2 numbers: The first is the factor for line thickness, and the second for staff space. Both contributions are added.
-
left-bound-info
(list) An alist of properties for determining attachments of spanners to edges.
-
left-padding
(dimension, in staff space) The amount of space that is put left to an object (e.g., a group of accidentals).
-
length
(dimension, in staff space) User override for the stem length of unbeamed stems.
-
length-fraction
(number) Multiplier for lengths. Used for determining ledger lines and stem lengths.
-
line-break-penalty
(number) Penalty for a line break at this column. This affects the choices of the line breaker; it avoids a line break at a column with a positive penalty and prefers a line break at a column with a negative penalty.
-
line-break-permission
(symbol) Instructs the line breaker on whether to put a line break at this column. Can be
force
orallow
.-
line-break-system-details
(list) An alist of properties to use if this column is the start of a system.
-
line-count
(integer) The number of staff lines.
-
line-positions
(list) Vertical positions of staff lines.
-
line-thickness
(number) The thickness of the tie or slur contour.
-
long-text
(markup) Text markup. See Formatting text.
-
max-beam-connect
(integer) Maximum number of beams to connect to beams from this stem. Further beams are typeset as beamlets.
-
max-stretch
(number) The maximum amount that this
VerticalAxisGroup
can be vertically stretched (for example, in order to better fill a page).-
measure-count
(integer) The number of measures for a multi-measure rest.
-
measure-length
(moment) Length of a measure. Used in some spacing situations.
-
merge-differently-dotted
(boolean) Merge note heads in collisions, even if they have a different number of dots. This is normal notation for some types of polyphonic music.
merge-differently-dotted
only applies to opposing stem directions (i.e., voice 1 & 2).-
merge-differently-headed
(boolean) Merge note heads in collisions, even if they have different note heads. The smaller of the two heads is rendered invisible. This is used in polyphonic guitar notation. The value of this setting is used by note-collision-interface.
merge-differently-headed
only applies to opposing stem directions (i.e., voice 1 & 2).-
minimum-X-extent
(pair of numbers) Minimum size of an object in X dimension, measured in
staff-space
units.-
minimum-Y-extent
(pair of numbers) Minimum size of an object in Y dimension, measured in
staff-space
units.-
minimum-distance
(dimension, in staff space) Minimum distance between rest and notes or beam.
-
minimum-length
(dimension, in staff space) Try to make a spanner at least this long, normally in the horizontal direction. This requires an appropriate callback for the
springs-and-rods
property. If added to aTie
, this sets the minimum distance between noteheads.-
minimum-length-fraction
(number) Minimum length of ledger line as fraction of note head size.
-
minimum-space
(dimension, in staff space) Minimum distance that the victim should move (after padding).
-
neutral-direction
(direction) Which direction to take in the center of the staff.
-
neutral-position
(number) Position (in half staff spaces) where to flip the direction of custos stem.
-
next
(layout object) Object that is next relation (e.g., the lyric syllable following an extender).
-
no-alignment
(boolean) If set, don’t place this grob in a
VerticalAlignment
; rather, place it using its ownY-offset
callback.-
no-ledgers
(boolean) If set, don’t draw ledger lines on this object.
-
no-stem-extend
(boolean) If set, notes with ledger lines do not get stems extending to the middle staff line.
-
non-default
(boolean) Set for manually specified clefs.
-
non-musical
(boolean) True if the grob belongs to a
NonMusicalPaperColumn
.-
note-names
(vector) Vector of strings containing names for easy-notation note heads.
-
outside-staff-horizontal-padding
(number) By default, an outside-staff-object can be placed so that is it very close to another grob horizontally. If this property is set, the outside-staff-object is raised so that it is not so close to its neighbor.
-
outside-staff-padding
(number) The padding to place between this grob and the staff when spacing according to
outside-staff-priority
.-
outside-staff-priority
(number) If set, the grob is positioned outside the staff in such a way as to avoid all collisions. In case of a potential collision, the grob with the smaller
outside-staff-priority
is closer to the staff.-
packed-spacing
(boolean) If set, the notes are spaced as tightly as possible.
-
padding
(dimension, in staff space) Add this much extra space between objects that are next to each other.
-
padding-pairs
(list) An alist mapping
(name . name)
to distances.-
page-break-penalty
(number) Penalty for page break at this column. This affects the choices of the page breaker; it avoids a page break at a column with a positive penalty and prefers a page break at a column with a negative penalty.
-
page-break-permission
(symbol) Instructs the page breaker on whether to put a page break at this column. Can be
force
orallow
.-
page-turn-penalty
(number) Penalty for a page turn at this column. This affects the choices of the page breaker; it avoids a page turn at a column with a positive penalty and prefers a page turn at a column with a negative penalty.
-
page-turn-permission
(symbol) Instructs the page breaker on whether to put a page turn at this column. Can be
force
orallow
.-
parenthesized
(boolean) Parenthesize this grob.
-
positions
(pair of numbers) Pair of staff coordinates
(left . right)
, where both left and right are instaff-space
units of the current staff. For slurs, this value selects which slur candidate to use; if extreme positions are requested, the closest one is taken.-
prefer-dotted-right
(boolean) For note collisions, prefer to shift dotted up-note to the right, rather than shifting just the dot.
-
ratio
(number) Parameter for slur shape. The higher this number, the quicker the slur attains its
height-limit
.-
remove-empty
(boolean) If set, remove group if it contains no interesting items.
-
remove-first
(boolean) Remove the first staff of an orchestral score?
-
restore-first
(boolean) Print a natural before the accidental.
-
rhythmic-location
(rhythmic location) Where (bar number, measure position) in the score.
-
right-bound-info
(list) An alist of properties for determining attachments of spanners to edges.
-
right-padding
(dimension, in staff space) Space to insert on the right side of an object (e.g., between note and its accidentals).
-
rotation
(list) Number of degrees to rotate this object, and what point to rotate around. For example,
#'(45 0 0)
rotates by 45 degrees around the center of this object.-
same-direction-correction
(number) Optical correction amount for stems that are placed in tight configurations. This amount is used for stems with the same direction to compensate for note head to stem distance.
-
script-priority
(number) A sorting key that determines in what order a script is within a stack of scripts.
-
self-alignment-X
(number) Specify alignment of an object. The value
-1
means left aligned,0
centered, and1
right-aligned in X direction. Other numerical values may also be specified.-
self-alignment-Y
(number) Like
self-alignment-X
but for the Y axis.-
shorten-pair
(pair of numbers) The lengths to shorten a text-spanner on both sides, for example a pedal bracket. Positive values shorten the text-spanner, while negative values lengthen it.
-
shortest-duration-space
(dimension, in staff space) Start with this much space for the shortest duration. This is expressed in
spacing-increment
as unit. See also spacing-spanner-interface.-
shortest-playing-duration
(moment) The duration of the shortest note playing here.
-
shortest-starter-duration
(moment) The duration of the shortest note that starts here.
-
side-axis
(number) If the value is
#X
(or equivalently0
), the object is placed horizontally next to the other object. If the value is#Y
or1
, it is placed vertically.-
side-relative-direction
(direction) Multiply direction of
direction-source
with this to get the direction of this object.-
size
(number) Size of object, relative to standard size.
-
skyline-horizontal-padding
(number) For determining the vertical distance between two staves, it is possible to have a configuration which would result in a tight interleaving of grobs from the top staff and the bottom staff. The larger this parameter is, the farther apart the staves are placed in such a configuration.
-
slash-negative-kern
(number) The space to remove between slashes in percent repeat glyphs. Larger values bring the two elements closer together.
-
slope
(number) The slope of this object.
-
slur-padding
(number) Extra distance between slur and script.
-
space-alist
(list) A table that specifies distances between prefatory items, like clef and time-signature. The format is an alist of spacing tuples:
(break-align-symbol type . distance)
, where type can be the symbolsminimum-space
orextra-space
.-
space-to-barline
(boolean) If set, the distance between a note and the following non-musical column will be measured to the bar line instead of to the beginning of the non-musical column. If there is a clef change followed by a bar line, for example, this means that we will try to space the non-musical column as though the clef is not there.
-
spacing-increment
(number) Add this much space for a doubled duration. Typically, the width of a note head. See also spacing-spanner-interface.
-
springs-and-rods
(boolean) Dummy variable for triggering spacing routines.
-
stacking-dir
(direction) Stack objects in which direction?
-
staff-padding
(dimension, in staff space) Maintain this much space between reference points and the staff. Its effect is to align objects of differing sizes (like the dynamics p and f) on their baselines.
-
staff-position
(number) Vertical position, measured in half staff spaces, counted from the middle line.
-
staff-space
(dimension, in staff space) Amount of space between staff lines, expressed in global
staff-space
.-
stem-attachment
(pair of numbers) An
(x . y)
pair where the stem attaches to the notehead.-
stem-end-position
(number) Where does the stem end (the end is opposite to the support-head)?
-
stem-spacing-correction
(number) Optical correction amount for stems that are placed in tight configurations. For opposite directions, this amount is the correction for two normal sized stems that overlap completely.
-
stemlet-length
(number) How long should be a stem over a rest?
-
stencil
(unknown) The symbol to print.
-
stencils
(list) Multiple stencils, used as intermediate value.
-
strict-grace-spacing
(boolean) If set, main notes are spaced normally, then grace notes are put left of the musical columns fot the main notes.
-
strict-note-spacing
(boolean) If set, unbroken columns with non-musical material (clefs, bar lines, etc.) are not spaced separately, but put before musical columns.
-
stroke-style
(string) Set to
"grace"
to turn stroke through flag on.-
style
(symbol) This setting determines in what style a grob is typeset. Valid choices depend on the
stencil
callback reading this property.-
text
(markup) Text markup. See Formatting text.
-
text-direction
(direction) This controls the ordering of the words. The default
RIGHT
is for roman text. Arabic or Hebrew should useLEFT
.-
thick-thickness
(number) Bar line thickness, measured in
line-thickness
.-
thickness
(number) Line thickness, generally measured in
line-thickness
.-
thin-kern
(number) The space after a hair-line in a bar line.
-
threshold
(pair of numbers) (min . max)
, where min and max are dimensions in staff space.-
tie-configuration
(list) List of
(position . dir)
pairs, indicating the desired tie configuration, where position is the offset from the center of the staff in staff space and dir indicates the direction of the tie (1
=>up,-1
=>down,0
=>center). A non-pair entry in the list causes the corresponding tie to be formatted automatically.-
to-barline
(boolean) If true, the spanner will stop at the bar line just before it would otherwise stop.
-
toward-stem-shift
(number) Amount by which scripts are shifted toward the stem if their direction coincides with the stem direction.
0.0
means keep the default position (centered on the note head),1.0
means centered on the stem. Interpolated values are possible.-
transparent
(boolean) This makes the grob invisible.
-
uniform-stretching
(boolean) If set, items stretch proportionally to their durations. This looks better in complex polyphonic patterns.
-
used
(boolean) If set, this spacing column is kept in the spacing problem.
-
vertical-skylines
(unknown) Two skylines, one above and one below this grob.
-
when
(moment) Global time step associated with this column happen?
-
width
(dimension, in staff space) The width of a grob measured in staff space.
-
word-space
(dimension, in staff space) Space to insert between words in texts.
-
zigzag-length
(dimension, in staff space) The length of the lines of a zigzag, relative to
zigzag-width
. A value of1
gives 60-degree zigzags.-
zigzag-width
(dimension, in staff space) The width of one zigzag squiggle. This number is adjusted slightly so that the glissando line can be constructed from a whole number of squiggles.
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Layout properties ] | [ Nach oben : Notation manual tables ] | [ Scheme functions > ] |
B.14 Identifiers
-
acciaccatura
- music (music) -
Create an acciaccatura from the following music expression
-
addChordShape
- key-symbol (symbol) tuning (pair) shape-definition (unknown) -
Add chord shape shape-definition to the chord-shape-table hash with the key (cons key-symbol tuning).
-
addInstrumentDefinition
- name (string) lst (list) -
Create instrument name with properties list.
-
addQuote
- name (string) music (music) -
Define music as a quotable music expression named name
-
afterGrace
- main (music) grace (music) -
Create grace note(s) after a main music expression.
-
allowPageTurn
-
Allow a page turn. May be used at toplevel (ie between scores or markups), or inside a score.
-
applyContext
- proc (procedure) -
Modify context properties with Scheme procedure proc.
-
applyMusic
- func (procedure) music (music) -
Apply procedure func to music.
-
applyOutput
- ctx (symbol) proc (procedure) -
Apply function
proc
to every layout object in contextctx
-
appoggiatura
- music (music) -
Create an appoggiatura from music
-
assertBeamQuant
- l (pair) r (pair) -
Testing function: check whether the beam quants l and r are correct
-
assertBeamSlope
- comp (procedure) -
Testing function: check whether the slope of the beam is the same as
comp
-
autochange
- music (music) -
Make voices that switch between staves automatically
-
balloonGrobText
- grob-name (symbol) offset (pair of numbers) text (markup) -
Attach text to grob-name at offset offset (use like
\once
) -
balloonText
- offset (pair of numbers) text (markup) -
Attach text at offset (use like
\tweak
) -
bar
- type (string) -
Insert a bar line of type type
-
barNumberCheck
- n (integer) -
Print a warning if the current bar number is not n.
-
bendAfter
- delta (unknown) -
Create a fall or doit of pitch interval delta.
-
breathe
-
Insert a breath mark.
-
clef
- type (string) -
Set the current clef to type.
-
cueDuring
- what (string) dir (direction) main-music (music) -
Insert contents of quote what corresponding to main-music, in a CueVoice oriented by dir.
-
displayLilyMusic
- music (music) -
Display the LilyPond input representation of music to the console.
-
displayMusic
- music (music) -
Display the internal representation of music to the console.
-
endSpanners
- music (music) -
Terminate the next spanner prematurely after exactly one note without the need of a specific end spanner.
-
featherDurations
- factor (moment) argument (music) -
Adjust durations of music in argument by rational factor.
-
grace
- music (music) -
Insert music as grace notes.
-
includePageLayoutFile
-
Include the file <basename>-page-layout.ly. Deprecated as part of two-pass spacing.
-
instrumentSwitch
- name (string) -
Switch instrument to name, which must be predefined with
\addInstrumentDefinition
. -
keepWithTag
- tag (symbol) music (music) -
Include only elements of music that are tagged with tag.
-
killCues
- music (music) -
Remove cue notes from music.
-
label
- label (symbol) -
Create label as a bookmarking label
-
makeClusters
- arg (music) -
Display chords in arg as clusters
-
musicMap
- proc (procedure) mus (music) -
(undocumented; fixme)
-
noPageBreak
-
Forbid a page break. May be used at toplevel (ie between scores or markups), or inside a score.
-
noPageTurn
-
Forbid a page turn. May be used at toplevel (ie between scores or markups), or inside a score.
-
octaveCheck
- pitch-note (music) -
octave check
-
ottava
- octave (number) -
set the octavation
-
overrideProperty
- name (string) property (symbol) value (any type) -
Set property to value in all grobs named name. The name argument is a string of the form
"Context.GrobName"
or"GrobName"
-
pageBreak
-
Force a page break. May be used at toplevel (ie between scores or markups), or inside a score.
-
pageTurn
-
Force a page turn between two scores or top-level markups.
-
parallelMusic
- voice-ids (list) music (music) -
Define parallel music sequences, separated by ’|’ (bar check signs), and assign them to the identifiers provided in voice-ids.
voice-ids: a list of music identifiers (symbols containing only letters)
music: a music sequence, containing BarChecks as limiting expressions.
Example:
\parallelMusic #'(A B C) { c c | d d | e e | d d | e e | f f | } <==> A = { c c | d d | } B = { d d | e e | } C = { e e | f f | }
-
parenthesize
- arg (music) -
Tag arg to be parenthesized.
-
partcombine
- part1 (music) part2 (music) -
(undocumented; fixme)
-
pitchedTrill
- main-note (music) secondary-note (music) -
(undocumented; fixme)
-
pointAndClickOff
-
(undocumented; fixme)
-
pointAndClickOn
-
(undocumented; fixme)
-
quoteDuring
- what (string) main-music (music) -
(undocumented; fixme)
-
removeWithTag
- tag (symbol) music (music) -
Remove elements of music that are tagged with tag.
-
resetRelativeOctave
- reference-note (music) -
Set the octave inside a \relative section.
-
rightHandFinger
- finger (number or string) -
Apply finger as a fingering indication.
-
scaleDurations
- fraction (pair of numbers) music (music) -
Multiply the duration of events in music by fraction.
-
scoreTweak
- name (string) -
Include the score tweak, if exists.
-
shiftDurations
- dur (integer) dots (integer) arg (music) -
Scale arg up by a factor of 2^dur*(2-(1/2)^dots).
-
spacingTweaks
- parameters (list) -
Set the system stretch, by reading the ’system-stretch property of the ‘parameters’ assoc list.
-
storePredefinedDiagram
- chord (music) tuning (pair) diagram-definition (unknown) -
Add predefined fret diagram defined by diagram-definition for the chord pitches chord and the stringTuning tuning.
-
tag
- tag (symbol) arg (music) -
Add tag to the
tags
property of arg. -
tocItem
- text (markup) -
Add a line to the table of content, using the
tocItemMarkup
paper variable markup -
transposedCueDuring
- what (string) dir (direction) pitch-note (music) main-music (music) -
Insert notes from the part what into a voice called
cue
, using the transposition defined by pitch-note. This happens simultaneously with main-music, which is usually a rest. The argument dir determines whether the cue notes should be notated as a first or second voice. -
transposition
- pitch-note (music) -
Set instrument transposition
-
tweak
- sym (symbol) val (any type) arg (music) -
Add
sym . val
to thetweaks
property of arg. -
unfoldRepeats
- music (music) -
(undocumented; fixme)
-
withMusicProperty
- sym (symbol) val (any type) music (music) -
Set sym to val in music.
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ Cheat sheet >> ] | ||
[ < Identifiers ] | [ Nach oben : Notation manual tables ] | [ Cheat sheet > ] |
B.15 Scheme functions
- Function: ly:add-listener list disp cl
Add the listener list to the dispatcher disp. Whenever disp hears an event of class cl, it is forwarded to list.
- Function: ly:assoc-get key alist default-value
Return value if key in alist, else
default-value
(or#f
if not specified).
- Function: ly:book-process book-smob default-paper default-layout output
Print book. output is passed to the backend unchanged. For example, it may be a string (for file based outputs) or a socket (for network based output).
- Function: ly:book-process-to-systems book-smob default-paper default-layout output
Print book. output is passed to the backend unchanged. For example, it may be a string (for file based outputs) or a socket (for network based output).
- Function: ly:bracket a iv t p
Make a bracket in direction a. The extent of the bracket is given by iv. The wings protrude by an amount of p, which may be negative. The thickness is given by t.
- Function: ly:chain-assoc-get key achain dfault
Return value for key from a list of alists achain. If no entry is found, return dfault or
#f
if no dfault is specified.
- Function: ly:clear-anonymous-modules
Plug a GUILE 1.6 and 1.7 memory leak by breaking a weak reference pointer cycle explicitly.
- Function: ly:context-events-below context
Return a
stream-distributor
that distributes all events from context and all its subcontexts.
- Function: ly:context-find context name
Find a parent of context that has name or alias name. Return
#f
if not found.
- Function: ly:context-grob-definition context name
Return the definition of name (a symbol) within context as an alist.
- Function: ly:context-id context
Return the ID string of context, i.e., for
\context Voice = one …
return the stringone
.
- Function: ly:context-name context
Return the name of context, i.e., for
\context Voice = one …
return the symbolVoice
.
- Function: ly:context-property-where-defined context name
Return the context above context where name is defined.
- Function: ly:context-pushpop-property context grob eltprop val
Do a single
\override
or\revert
operation in context. The grob definition grob is extended with eltprop (if val is specified) or reverted (if unspecified).
- Function: ly:context-set-property! context name val
Set value of property name in context context to val.
- Function: ly:dimension? d
Return d as a number. Used to distinguish length variables from normal numbers.
- Function: ly:dir? s
A type predicate. The direction
s
is-1
,0
or1
, where-1
represents left or down and1
represents right or up.
- Function: ly:error str rest
A Scheme callable function to issue the error str. The error is formatted with
format
and rest.
- Function: ly:eval-simple-closure delayed closure scm-start scm-end
Evaluate a simple closure with the given delayed argument. If scm-start and scm-end are defined, evaluate it purely with those start and end points.
- Function: ly:event-property sev sym
Get the property sym of stream event mus. If sym is undefined, return
'()
.
- Function: ly:font-design-size font
Given the font metric font, return the design size, relative to the current output-scale.
- Function: ly:font-get-glyph font name
Return a stencil from font for the glyph named name. If the glyph is not available, return an empty stencil.
Note that this command can only be used to access glyphs from fonts loaded with
ly:system-font-load
; currently, this means either the Emmentaler or Aybabtu fonts, corresponding to the font encodingsfetaMusic
andfetaBraces
, respectively.
- Function: ly:font-glyph-name-to-charcode font name
Return the character code for glyph name in font.
Note that this command can only be used to access glyphs from fonts loaded with
ly:system-font-load
; currently, this means either the Emmentaler or Aybabtu fonts, corresponding to the font encodingsfetaMusic
andfetaBraces
, respectively.
- Function: ly:font-glyph-name-to-index font name
Return the index for name in font.
Note that this command can only be used to access glyphs from fonts loaded with
ly:system-font-load
; currently, this means either the Emmentaler or Aybabtu fonts, corresponding to the font encodingsfetaMusic
andfetaBraces
, respectively.
- Function: ly:font-index-to-charcode font index
Return the character code for index in font.
Note that this command can only be used to access glyphs from fonts loaded with
ly:system-font-load
; currently, this means either the Emmentaler or Aybabtu fonts, corresponding to the font encodingsfetaMusic
andfetaBraces
, respectively.
- Function: ly:font-magnification font
Given the font metric font, return the magnification, relative to the current output-scale.
- Function: ly:font-sub-fonts font
Given the font metric font of an OpenType font, return the names of the subfonts within font.
- Function: ly:format-output context
Given a global context in its final state, process it and return the
Music_output
object in its final state.
- Function: ly:get-all-function-documentation
Get a hash table with all LilyPond Scheme extension functions.
- Function: ly:get-glyph font index
Retrieve a stencil for the glyph numbered index in font.
Note that this command can only be used to access glyphs from fonts loaded with
ly:system-font-load
; currently, this means either the Emmentaler or Aybabtu fonts, corresponding to the font encodingsfetaMusic
andfetaBraces
, respectively.
- Function: ly:get-listened-event-classes
Return a list of all event classes that some translator listens to.
- Function: ly:grob-alist-chain grob global
Get an alist chain for grob grob, with global as the global default. If unspecified,
font-defaults
from the layout block is taken.
- Function: ly:grob-common-refpoint grob other axis
Find the common refpoint of grob and other for axis.
- Function: ly:grob-common-refpoint-of-array grob others axis
Find the common refpoint of grob and others (a grob-array) for axis.
- Function: ly:grob-extent grob refp axis
Get the extent in axis direction of grob relative to the grob refp.
- Function: ly:grob-object grob sym
Return the value of a pointer in grob g of property sym. It returns
'()
(end-of-list) if sym is undefined in g.
- Function: ly:grob-parent grob axis
Get the parent of grob. axis is 0 for the X-axis, 1 for the Y-axis.
- Function: ly:grob-property grob sym deflt
Return the value of a value in grob g of property sym. It returns
'()
(end-of-list) or deflt (if specified) if sym is undefined in g.
- Function: ly:grob-relative-coordinate grob refp axis
Get the coordinate in axis direction of grob relative to the grob refp.
- Function: ly:grob-robust-relative-extent grob refp axis
Get the extent in axis direction of grob relative to the grob refp, or
(0,0)
if empty.
- Function: ly:gulp-file name size
Read the file name, and return its contents in a string. The file is looked up using the search path.
- Function: ly:input-both-locations sip
Return input location in sip as
(file-name first-line first-column last-line last-column)
.
- Function: ly:input-file-line-char-column sip
Return input location in sip as
(file-name line char column)
.
- Function: ly:input-message sip msg rest
Print msg as a GNU compliant error message, pointing to the location in sip. msg is interpreted similar to
format
’s argument, using rest.
- Function: ly:interpret-music-expression mus ctx
Interpret the music expression mus in the global context ctx. The context is returned in its final state.
- Function: ly:interpret-stencil-expression expr func arg1 offset
Parse expr, feed bits to func with first arg arg1 having offset offset.
- Function: ly:item-break-dir it
The break status direction of item it.
-1
means end of line,0
unbroken, and1
beginning of line.
- Function: ly:lexer-keywords lexer
Return a list of
(KEY . CODE)
pairs, signifying the LilyPond reserved words list.
- Function: ly:make-book paper header scores
Make a
\book
of paper and header (which may be#f
as well) containing\scores
.
- Function: ly:make-duration length dotcount num den
length is the negative logarithm (base 2) of the duration: 1 is a half note, 2 is a quarter note, 3 is an eighth note, etc. The number of dots after the note is given by the optional argument dotcount.
The duration factor is optionally given by num and den.
A duration is a musical duration, i.e., a length of time described by a power of two (whole, half, quarter, etc.) and a number of augmentation dots.
- Function: ly:make-global-context output-def
Set up a global interpretation context, using the output block output_def. The context is returned.
- Function: ly:make-global-translator global
Create a translator group and connect it to the global context global. The translator group is returned.
- Function: ly:make-listener callback
Create a listener. Any time the listener hears an object, it will call callback with that object.
callback should take exactly one argument.
- Function: ly:make-moment n d gn gd
Create the rational number with main timing n/d, and optional grace timing gn/gd.
A moment is a point in musical time. It consists of a pair of rationals (m, g), where m is the timing for the main notes, and g the timing for grace notes. In absence of grace notes, g is zero.
- Function: ly:make-music props
Make a C++
Music
object and initialize it with props.This function is for internal use and is only called by
make-music
, which is the preferred interface for creating music objects.
- Function: ly:make-music-function signature func
Make a function to process music, to be used for the parser.
func
is the function, andsignature
describes its arguments.signature
is a list containing eitherly:music?
predicates or other type predicates.
- Function: ly:make-page-permission-marker symbol permission
Return page marker with page breaking and turning permissions.
- Function: ly:make-pango-description-string chain size
Make a
PangoFontDescription
string for the property alist chain at size size.
- Function: ly:make-paper-outputter port format
Create an outputter that evaluates within
output-
format, writing to port.
- Function: ly:make-pitch octave note alter
octave is specified by an integer, zero for the octave containing middle C. note is a number indexing the global default scale, with 0 corresponding to pitch C and 6 usually corresponding to pitch B. alter is a rational number of 200-cent whole tones for alteration.
- Function: ly:make-scale steps
Create a scale. The argument is a vector of rational numbers, each of which represents the number of 200 cent tones of a pitch above the tonic.
- Function: ly:make-simple-closure expr
Make a simple closure. expr should be form of
(func a1 A2 …)
, and will be invoked as(func delayed-arg a1 a2 …)
.
- Function: ly:make-stencil expr xext yext
Stencils are device independent output expressions. They carry two pieces of information:
- A specification of how to print this object. This specification is processed by the output backends, for example ‘scm/output-ps.scm’.
-
The vertical and horizontal extents of the object, given as pairs. If an extent is unspecified (or if you use
(1000 . -1000)
as its value), it is taken to be empty.
- Function: ly:make-stream-event cl proplist
Create a stream event of class cl with the given mutable property list.
- Function: ly:message str rest
A Scheme callable function to issue the message str. The message is formatted with
format
and rest.
- Function: ly:minimal-breaking pb
Break (pages and lines) the
Paper_book
object pb without looking for optimal spacing: stack as many lines on a page before moving to the next one.
- Function: ly:modules-lookup modules sym def
Look up sym in the list modules, returning the first occurence. If not found, return def or
#f
if def isn’t specified.
- Function: ly:music-length mus
Get the length of music expression mus and return it as a
Moment
object.
- Function: ly:music-mutable-properties mus
Return an alist containing the mutable properties of mus. The immutable properties are not available, since they are constant and initialized by the
make-music
function.
- Function: ly:music-property mus sym dfault
Get the property sym of music expression mus. If sym is undefined, return
'()
.
- Function: ly:note-head::stem-attachment font-metric glyph-name
Get attachment in font-metric for attaching a stem to notehead glyph-name.
- Function: ly:optimal-breaking pb
Optimally break (pages and lines) the
Paper_book
object pb to minimize badness in bother vertical and horizontal spacing.
- Function: ly:otf->cff otf-file-name
Convert the contents of an OTF file to a CFF file, returning it as a string.
- Function: ly:otf-font-glyph-info font glyph
Given the font metric font of an OpenType font, return the information about named glyph glyph (a string).
- Function: ly:otf-font-table-data font tag
Extract a table tag from font. Return empty string for non-existent tag.
- Function: ly:output-def-lookup pap sym def
Look up sym in the pap output definition (e.g.,
\paper
). Return the value or def (which defaults to'()
) if undefined.
- Function: ly:page-turn-breaking pb
Optimally break (pages and lines) the
Paper_book
object pb such that page turns only happen in specified places, returning its pages.
- Function: ly:pango-font-physical-fonts f
Return alist of
(ps-name file-name font-index)
lists for Pango font f.
- Function: ly:paper-get-font paper-smob chain
Return a font metric satisfying the font-qualifiers in the alist chain chain. (An alist chain is a list of alists, containing grob properties.)
- Function: ly:paper-score-paper-systems paper-score
Return vector of
paper_system
objects from paper-score.
- Function: ly:paper-system-minimum-distance sys1 sys2
Measure the minimum distance between these two paper-systems, using their stored skylines if possible and falling back to their extents otherwise.
- Function: ly:parser-lookup parser-smob symbol
Look up symbol in parser-smob’s module. Return
'()
if not defined.
- Function: ly:parser-parse-string parser-smob ly-code
Parse the string ly-code with parser-smob. Upon failure, throw
ly-file-failed
key.
- Function: ly:parser-set-note-names parser names
Replace current note names in parser. names is an alist of symbols. This only has effect if the current mode is notes.
- Function: ly:pitch-diff pitch root
Return pitch delta such that pitch transposed by delta equals root.
- Function: ly:pitch-transpose p delta
Transpose p by the amount delta, where delta is relative to middle C.
- Function: ly:position-on-line? sg spos
Return whether pos is on a line of the staff associated with the the grob sg (even on an extender line).
- Function: ly:programming-error str rest
A Scheme callable function to issue the internal warning str. The message is formatted with
format
and rest.
- Function: ly:progress str rest
A Scheme callable function to print progress str. The message is formatted with
format
and rest.
- Function: ly:property-lookup-stats sym
Return hash table with a property access corresponding to sym. Choices are
prob
,grob
, andcontext
.
- Function: ly:relative-group-extent elements common axis
Determine the extent of elements relative to common in the axis direction.
- Function: ly:round-filled-box xext yext blot
Make a
Stencil
object that prints a black box of dimensions xext, yext and roundness blot.
- Function: ly:round-filled-polygon points blot
Make a
Stencil
object that prints a black polygon with corners at the points defined by points (list of coordinate pairs) and roundness blot.
- Function: ly:run-translator mus output-def
Process mus according to output-def. An interpretation context is set up, and mus is interpreted with it. The context is returned in its final state.
Optionally, this routine takes an object-key to to uniquely identify the score block containing it.
- Function: ly:score-embedded-format score layout
Run score through layout (an output definition) scaled to correct output-scale already, returning a list of layout-lines. This function takes an optional
Object_key
argument.
- Function: ly:set-default-scale scale
Set the global default scale. This determines the tuning of pitches with no accidentals or key signatures. The first pitch is C. Alterations are calculated relative to this scale. The number of pitches in this scale determines the number of scale steps that make up an octave. Usually the 7-note major scale.
- Function: ly:set-grob-modification-callback cb
Specify a procedure that will be called every time LilyPond modifies a grob property. The callback will receive as arguments the grob that is being modified, the name of the C++ file in which the modification was requested, the line number in the C++ file in which the modification was requested, the name of the function in which the modification was requested, the property to be changed, and the new value for the property.
- Function: ly:set-middle-C! context
Set the
middleCPosition
variable in context based on the variablesmiddleCClefPosition
and middleCOffset.
- Function: ly:set-property-cache-callback cb
Specify a procedure that will be called whenever lilypond calculates a callback function and caches the result. The callback will receive as arguments the grob whose property it is, the name of the property, the name of the callback that calculated the property, and the new (cached) value of the property.
- Function: ly:solve-spring-rod-problem springs rods length ragged
Solve a spring and rod problem for count objects, that are connected by count-1 springs, and an arbitrary number of rods. count is implicitly given by springs and rods. The springs argument has the format
(ideal, inverse_hook)
and rods is of the form(idx1, idx2, distance)
.length is a number, ragged a boolean.
The function returns a list containing the force (positive for stretching, negative for compressing and
#f
for non-satisfied constraints) followed by spring-count+1 positions of the objects.
- Function: ly:spanner-bound spanner dir
Get one of the bounds of spanner. dir is
-1
for left, and1
for right.
- Function: ly:staff-symbol-line-thickness grob
Returns the line-thickness of the staff associated with grob.
- Function: ly:start-environment
Return the environment (a list of strings) that was in effect at program start.
- Function: ly:stencil-aligned-to stil axis dir
Align stil using its own extents. dir is a number.
-1
and1
are left and right, respectively. Other values are interpolated (so0
means the center).
- Function: ly:stencil-combine-at-edge first axis direction second padding minimum
Construct a stencil by putting second next to first. axis can be 0 (x-axis) or 1 (y-axis). direction can be -1 (left or down) or 1 (right or up). The stencils are juxtaposed with padding as extra space. If this puts the reference points closer than minimum, they are moved by the latter amount. first and second may also be
'()
or#f
.
- Function: ly:stencil-extent stil axis
Return a pair of numbers signifying the extent of stil in axis direction (
0
or1
for x and y axis, respectively).
- Function: ly:stencil-rotate stil angle x y
Return a stencil stil rotated angle degrees around the relative offset (x, y). E.g. an offset of (-1, 1) will rotate the stencil around the left upper corner.
- Function: ly:stencil-rotate-absolute stil angle x y
Return a stencil stil rotated angle degrees around point (x, y), given in absolute coordinates.
- Function: ly:stencil-translate stil offset
Return a stil, but translated by offset (a pair of numbers).
- Function: ly:stencil-translate-axis stil amount axis
Return a copy of stil but translated by amount in axis direction.
- Function: ly:system-font-load name
Load the OpenType system font ‘name.otf’. Fonts loaded with this command must contain three additional SFNT font tables called
LILC
,LILF
, andLILY
, needed for typesetting musical elements. Currently, only the Emmentaler and the Aybabtu fonts fulfill these requirements.Note that only
ly:font-get-glyph
and derived code (like\lookup
) can access glyphs from the system fonts; text strings are handled exclusively via the Pango interface.
- Function: ly:system-stretch system amount-scm
Stretch the system vertically by the given amount. This must be called before the system is drawn (for example with
ly:system-print
).
- Function: ly:text-dimension font text
Given the font metric in font and the string text, compute the extents of that text in that font. The return value is a pair of number-pairs.
- Function: ly:text-interface::interpret-markup
Convert a text markup into a stencil. Takes three arguments, layout, props, and markup.
layout is a
\layout
block; it may be obtained from a grob withly:grob-layout
. props is an alist chain, i.e. a list of alists. This is typically obtained with(ly:grob-alist-chain grob (ly:output-def-lookup layout 'text-font-defaults))
. markup is the markup text to be processed.
- Function: ly:translator-name trans
Return the type name of the translator object trans. The name is a symbol.
- Function: ly:ttf->pfa ttf-file-name idx
Convert the contents of a TrueType font file to PostScript Type 42 font, returning it as a string. The optional idx argument is useful for TrueType collections (TTC) only; it specifies the font index within the TTC. The default value of idx is 0.
- Function: ly:ttf-ps-name ttf-file-name idx
Extract the PostScript name from a TrueType font. The optional idx argument is useful for TrueType collections (TTC) only; it specifies the font index within the TTC. The default value of idx is 0.
- Function: ly:warning str rest
A Scheme callable function to issue the warning
str
. The message is formatted withformat
andrest
.
[ << Notation manual tables ] | [Anfang][Inhalt][Index][ ? ] | [ GNU Free Documentation License >> ] | ||
[ < Scheme functions ] | [ Nach oben : Top ] | [ GNU Free Documentation License > ] |
C. Cheat sheet
Syntax | Erklärung | Beispiel |
| Tondauern | |
| Punktierung | |
| Tonleiter | |
| Vorzeichen | |
| Notenschlüssel | |
| Taktangaben | |
| Pause | |
| Bindebogen | |
| Tonart | |
note | Oktavierung | |
note | Oktavierung nach unten | |
| Legatobogen | |
| Phrasierungsbogen | |
| Balken | |
| mehr Notensysteme | |
| Artikulationszeichen | |
| Dynamik | |
| Crescendo | |
| Decrescendo | |
| Noten im Akkord | |
| Auftakt | |
| Triolen | |
| Verzierungen | |
| Texteingabe | twinkle |
| Gesangtext | |
| Gesangtext-Trennstrich | |
| Akkorde | |
| Akkordsymbole drucken | |
| Mehrstimmigkeit | |
| unsichtbare Pausen |
[ << Cheat sheet ] | [Anfang][Inhalt][Index][ ? ] | [ LilyPond command index >> ] | ||
[ < Cheat sheet ] | [ Nach oben : Top ] | [ LilyPond command index > ] |
D. GNU Free Documentation License
Version 1.1, March 2000
Copyright © 2000 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. |
-
PREAMBLE
The purpose of this License is to make a manual, textbook, or other written document free in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.
This License is a kind of ‚copyleft‘, which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
-
APPLICABILITY AND DEFINITIONS
This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. The ‚Document‘, below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as ‚you‘.
A ‚Modified Version‘ of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.
A ‚Secondary Section‘ is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document’s overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (For example, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.
The ‚Invariant Sections‘ are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License.
The ‚Cover Texts‘ are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License.
A ‚Transparent‘ copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is not ‚Transparent‘ is called ‚Opaque‘.
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML designed for human modification. Opaque formats include PostScript, PDF, proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML produced by some word processors for output purposes only.
The ‚Title Page‘ means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, ‚Title Page‘ means the text near the most prominent appearance of the work’s title, preceding the beginning of the body of the text.
-
VERBATIM COPYING
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
-
COPYING IN QUANTITY
If you publish printed copies of the Document numbering more than 100, and the Document’s license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a publicly-accessible computer-network location containing a complete Transparent copy of the Document, free of added material, which the general network-using public has access to download anonymously at no charge using public-standard network protocols. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.
-
MODIFICATIONS
You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:
- Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.
- List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has less than five).
- State on the Title page the name of the publisher of the Modified Version, as the publisher.
- Preserve all the copyright notices of the Document.
- Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
- Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.
- Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document’s license notice.
- Include an unaltered copy of this License.
- Preserve the section entitled ‚History‘, and its title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section entitled ‚History‘ in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.
- Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the ‚History‘ section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.
- In any section entitled ‚Acknowledgments‘ or ‚Dedications‘, preserve the section’s title, and preserve in the section all the substance and tone of each of the contributor acknowledgments and/or dedications given therein.
- Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.
- Delete any section entitled ‚Endorsements‘. Such a section may not be included in the Modified Version.
- Do not retitle any existing section as ‚Endorsements‘ or to conflict in title with any Invariant Section.
If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version’s license notice. These titles must be distinct from any other section titles.
You may add a section entitled ‚Endorsements‘, provided it contains nothing but endorsements of your Modified Version by various parties—for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.
-
COMBINING DOCUMENTS
You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections entitled ‚History‘ in the various original documents, forming one section entitled ‚History‘; likewise combine any sections entitled ‚Acknowledgments‘, and any sections entitled ‚Dedications‘. You must delete all sections entitled ‚Endorsements.‘
-
COLLECTIONS OF DOCUMENTS
You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
-
AGGREGATION WITH INDEPENDENT WORKS
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, does not as a whole count as a Modified Version of the Document, provided no compilation copyright is claimed for the compilation. Such a compilation is called an ‚aggregate‘, and this License does not apply to the other self-contained works thus compiled with the Document, on account of their being thus compiled, if they are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one quarter of the entire aggregate, the Document’s Cover Texts may be placed on covers that surround only the Document within the aggregate. Otherwise they must appear on covers around the whole aggregate.
-
TRANSLATION
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License provided that you also include the original English version of this License. In case of a disagreement between the translation and the original English version of this License, the original English version will prevail.
-
TERMINATION
You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
-
FUTURE REVISIONS OF THIS LICENSE
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License ‚or any later version‘ applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.
ADDENDUM: How to use this License for your documents
To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:
Copyright (C) year your name. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being list their titles, with the Front-Cover Texts being list, and with the Back-Cover Texts being list. A copy of the license is included in the section entitled ‚GNU Free Documentation License‘. |
If you have no Invariant Sections, write ‚with no Invariant Sections‘ instead of saying which ones are invariant. If you have no Front-Cover Texts, write ‚no Front-Cover Texts‘ instead of ‚Front-Cover Texts being list‘; likewise for Back-Cover Texts.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.
[ << GNU Free Documentation License ] | [Anfang][Inhalt][Index][ ? ] | [ LilyPond index >> ] | ||
[ < GNU Free Documentation License ] | [ Nach oben : Top ] | [ LilyPond index > ] |
E. LilyPond command index
Dieser Index listet alle LilyPond Befehle und Schlüsselwörter auf, versehen mit Verweisen zu den Abschnitten im Handbuch, die den Befehl beschreiben oder seine Verwendung diskutieren. Der erste Teil zeigt auf die genaue Stelle im Handbuch, an der der Befehl oder das Schlüsselwort erscheint, der zweite Teil zeigt auf den entsprechenden Abschnitt.
Springe zu: | !
'
(
,
-
.
/
:
<
=
>
?
[
\
]
^
_
|
~
A B C D E F G H I K L M N O P Q R S T U V W X |
---|
Springe zu: | !
'
(
,
-
.
/
:
<
=
>
?
[
\
]
^
_
|
~
A B C D E F G H I K L M N O P Q R S T U V W X |
---|
[ << LilyPond command index ] | [Anfang][Inhalt][Index][ ? ] | [ >> ] | ||
[ < LilyPond command index ] | [ Nach oben : Top ] | [ > ] |
F. LilyPond index
Zusätzlich zu allen LilyPond Befehlen und Schlüsselwörtern listet dieser Index alle relevanten Begriffe auf und verlinkt sie mit den entsprechenden Abschnitten, wo sie erklärt werden. Der erste Teil zeigt auf die genaue Stelle im Handbuch, an der der der Begriff vorkommt, der zweite Teil zeigt auf den gesamten Abschnitt, in dem das Thema behandelt wird.
Springe zu: | !
'
(
,
-
.
/
1
8
:
<
=
>
?
[
\
]
^
_
|
~
Ä
Ü
A B C D E F G H I J K L M N O P Q R S T U V W X Z |
---|
Springe zu: | !
'
(
,
-
.
/
1
8
:
<
=
>
?
[
\
]
^
_
|
~
Ä
Ü
A B C D E F G H I J K L M N O P Q R S T U V W X Z |
---|
[Anfang][Inhalt][Index][ ? ] |
Inhaltsverzeichnis
- 1. Musical notation
- 1.1 Pitches
- 1.2 Rhythms
- 1.3 Expressive marks
- 1.4 Repeats
- 1.5 Simultaneous notes
- 1.6 Staff notation
- 1.7 Editorial annotations
- 1.8 Text
- 2. Specialist notation
- 2.1 Vocal music
- 2.2 Keyboard and other multi-staff instruments
- 2.3 Unfretted string instruments
- 2.4 Fretted string instruments
- 2.5 Percussion
- 2.6 Wind instruments
- 2.7 Chord notation
- 2.8 Ancient notation
- 2.9 World music
- 3. General input and output
- 4. Spacing issues
- 5. Changing defaults
- 5.1 Interpretation contexts
- 5.2 Explaining the Internals Reference
- 5.3 Modifying properties
- 5.4 Useful concepts and properties
- 5.5 Advanced tweaks
- 6. Interfaces for programmers
- A. Literature list
- B. Notation manual tables
- B.1 Chord name chart
- B.2 Common chord modifiers
- B.3 Predefined fretboard diagrams
- B.4 MIDI instruments
- B.5 List of colors
- B.6 The Feta font
- B.7 Note head styles
- B.8 Text markup commands
- B.9 Text markup list commands
- B.10 List of articulations
- B.11 Percussion notes
- B.12 All context properties
- B.13 Layout properties
- B.14 Identifiers
- B.15 Scheme functions
- C. Cheat sheet
- D. GNU Free Documentation License
- E. LilyPond command index
- F. LilyPond index
[Anfang][Inhalt][Index][ ? ] |
Über dieses Dokument
Dieses Dokument wurde erzeugt von Graham Percival am 15. Dezember 2009 durch texi2html 1.82.
Die Links in der Navigationsleiste haben die folgende Bedeutung:
Button | Name | Gehe zu | Von 1.2.3 gehe zu |
---|---|---|---|
[] | |||
[ << ] | FastBack | Anfang dieses oder des letzten Kapitels | 1 |
[] | |||
[Anfang] | Anfang | Titelseite des Dokuments | |
[Inhalt] | Inhalt | Inhaltsverzeichnis | |
[Index] | Index | Index | |
[ ? ] | Über | Über (Hilfe) | |
[] | |||
[ >> ] | FastForward | Nächstes Kapitel | 2 |
[] | |||
[] | |||
[ < ] | Zurück | Voriger Abschnitt in Lesereihenfolge | 1.2.2 |
[] | |||
[ Nach oben ] | Nach oben | Abschnitt nach oben | 1.2 |
[] | |||
[ > ] | Nach vorne | Nächster Abschnitt in Lesereihenfolge | 1.2.4 |
wobei das Beispiel annimmt, dass die aktuelle Position bei Unterabschnitt 1-2-3 in einem Dokument mit folgender Struktur liegt:
- 1. Abschnitt 1
- 1.1 Unterabschnitt 1-1
- ...
- 1.2 Unterabschnitt 1-2
- 1.2.1 Unterabschnitt 1-2-1
- 1.2.2 Unterabschnitt 1-2-2
- 1.2.3 Unterabschnitt 1-2-3 <== Aktuelle Position
- 1.2.4 Unterabschnitt 1-2-4
- 1.3 Unterabschnitt 1-3
- ...
- 1.4 Unterabschnitt 1-4
- 1.1 Unterabschnitt 1-1