Fehlermeldung Triolen

Begonnen von Cinna, Donnerstag, 14. Dezember 2017, 18:25

« vorheriges - nächstes »

Cinna

Hallo zusammen, ich versuche grad für eine Arbeit den Rhythmus des Ravel-Ostinato in Lilypond einzugeben und irgendwie wirft er mir für den zweiten Takt ständig eine Fehlermeldung aus, obwohl ich da nichts anders gemacht habe als im ersten. Kann mir da jemand helfen, was ich falsch mache?
Fehlermeldung: warning: omitting tuplet bracket with neither left nor right bound
die kommt für alle Triolen des zweiten Taktes und als Endresultat erhalte ich nur den ersten Takt und der zweite ist zwar da, aber leer.

Und eine zweite Frage noch, wäre eher eine Schönheitskorrektur, aber gibt es eine Möglichkeit, die Notenhälse nach oben zu erzwingen?

\version "2.18.2"
#(define mydrums '((tambourine default #t 0)))

tambustaff = {
  \override Staff.StaffSymbol.line-positions = #'( 0 )
  \override Staff.BarLine.bar-extent = #'(-1.5 . 1.5)
}

\new DrumStaff {
  \tambustaff
  \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)

\drummode {
\time 3/4
tamb8  \tuplet 3/2 { tamb16 tamb16 tamb16 } tamb8 \tuplet 3/2 { tamb16 tamb16 tamb16 } tamb8 tamb8 } | tamb8  \tuplet 3/2 { tamb16 tamb16 tamb16 } tamb8 \tuplet 3/2 { tamb16 tamb16 tamb16 } \tuplet 3/2 { tamb16 tamb16 tamb16 } \tuplet 3/2 { tamb16 tamb16 tamb16 }
}
}

Cinna

ok, hab den Klammerfehler selber gefunden beim zigsten mal durchlesen. :)

Malte

Hallo Cinna,

willkommen im Forum! Den Klammerfehler hast du ja selbst gefunden; hier hilft es übrigens, einen Texteditor zu verwenden, der Klammernpaare hervorhebt, wenn der Cursor auf einer der beiden beteiligten Klammern sitzt. Du könntest sogar überlegen, Frescobaldi zu verwenden, falls du den noch nicht kennst; hierbei handelt es sich um einen Editor, der speziell auf LilyPond zugeschnitten ist und das Kompilieren etc. erheblich vereinfacht ;)

Jetzt möchte ich aber erstmal noch auf deine Frage
Zitat von: Cinna am Donnerstag, 14. Dezember 2017, 18:25
[...] gibt es eine Möglichkeit, die Notenhälse nach oben zu erzwingen?
antworten: Ja, die gibt es, sie heißt \stemUp. Dieser Befehl muß irgendwo vor den betreffenden Noten stehen. Damit verwandt sind die beiden Befehle \stemDown und \stemNeutral; letzterer überläßt wieder LilyPond die automatische Halsausrichtung (unter der Mittellinie Hals rauf, darüber runter).

Nun hab ich aber noch eine andere Anmerkung: Falls du nur dieses eine Instrument auf dieser einen Linie notierst, brauchst du dafür keinen DrumStaff mit selbst definierten Notenpositionen, Linienanzahl und Taktstrichhöhen; viel einfacher ist es, einen RhythmicStaff zu verwenden. Der ignoriert die Tonhöhe (hier verwende ich deshalb einfach c) und setzt alles (mit Hals nach oben) auf eine Linie:\version "2.18.2"

\new RhythmicStaff {
  \time 3/4
  c8 \tuplet 3/2 { c16 c c }
  c8 \tuplet 3/2 { c16 c c }
  c8 c |
  c \tuplet 3/2 { c16 c c }
  c8 \tuplet 3/2 { c16 c c }
  \tuplet 3/2 { c c c } \tuplet 3/2 { c c c }
}
Übrigens brauchst du, wie hier zu sehen ist, Dauern nicht für jede Note anzugeben, sondern nur für jede erste mit neuer Dauer.

Solltest du auch beim RhythmicStaff einen Schlagzeug-Schlüssel haben wollen, ist das natürlich möglich, der fragliche Teil beginnt dann mit\new RhythmicStaff \with {
  \consists Clef_engraver
} {
  \clef percussion
  \time 3/4
  c8 \tuplet 3/2 { c16 c c }


Ach ja, und noch eine Kleinigkeit, die hier vermutlich wurscht ist, aber hilfreich sein kann, solltest du mal viele Triolen schreiben wollen:
\tuplet 3/2 8 { c16 c c c c c c c c }
steht kurz für
\tuplet 3/2 { c16 c c } \tuplet 3/2 { c c c } \tuplet 3/2 { c c c }
Die 8 gibt hier die Dauer der Gruppierung an.