Autor Thema: Arpeggio-Klammern  (Gelesen 8547 mal)

Sterndeuter

  • Gast
Arpeggio-Klammern
« am: Mittwoch, 11. März 2009, 19:56 »
Hallo, ich habe ja neulich das Problem mit den Arpeggio-Klammern gehabt. Die Klammer an sich einzufügen ist auch kein Problem, aber das Aussehen lässt sich nicht verändern. Hier mal der Quelltext:
\version "2.10.33"

 \new PianoStaff <<
  \set PianoStaff.connectArpeggios = ##t

  \new Staff {
   \clef treble
    \key c \major
     \time 4/4
      <<
       \relative c' {
        \arpeggioBracket

s1.

       }
      \\
       \relative c' {
        \arpeggioBracket

c1\arpeggio

       }
      >>
    }

  \new Staff {
   \clef bass
    \key c \major
     \time 4/4
      <<
       \relative c' {
        \arpeggioBracket

g1\arpeggio

       }
      \\
       \relative c, {
        \arpeggioBracket

c1

       }
      >>
     }
 >>

Kann mir jemand helfen? Die Arpeggio-Klammern werden nur als Schlangenlinie angezeigt...

Und ist es normal, dass am Ende dieses Beispiels in der oberen Zeile die Notenzeile weitergeführt wird (siehe Anhang)?

derHindemith

  • Gast
Re: Arpeggio-Klammern
« Antwort #1 am: Mittwoch, 11. März 2009, 20:20 »
Na, die weiterführen ist wegen dem s1

Sterndeuter

  • Gast
Re: Arpeggio-Klammern
« Antwort #2 am: Mittwoch, 11. März 2009, 20:49 »
stimmt, hätte ich auch selbst drauf kommen können *schäm*

comper

  • Gast
Re: Arpeggio-Klammern
« Antwort #3 am: Donnerstag, 12. März 2009, 00:11 »
Dieser \arpeggioBracket-Befehl macht nicht viel mehr als
  \override Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket

Lilypond einigermassen Eingeweihte wissen (aus leidigen Erfahrungen), dass aus
einem solchen contextlosen \override Lilypond reimt sich normalerweise
  \override Voice.Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket

Beim Bracket-Snippet zu NR 1.2.3 passt das bestens.

Aber das andere Beispiel, wo der Klammer überbruckt, ist relevanter, und auch anders gemacht.
Das (unübersetzte) Schnipsel spricht zweimal von PianoStaff-Context, und macht dann (zuoberst)
    \override PianoStaff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket
Dann gehts.

Schweres Geschütz!
Die normale Arpeggios (für gebrochen) sind jetzt ziemlich weg vom Fenster.
Leichtfüssiger gehts so:
chordBracket = {
  \once \override PianoStaff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket
  \once \set PianoStaff.connectArpeggios = ##t
}

und dann \chordBracket jeweils vor dem Arpeggio-Zeitpunkt einsetzen.
In nur einer Voice reicht!

Gruss

Sterndeuter

  • Gast
Re: Arpeggio-Klammern
« Antwort #4 am: Donnerstag, 12. März 2009, 18:51 »
Gut, das hab ich jetzt schon mal verstanden.

Gibt es auch eine Möglichkeit, die Klammern um bestimmte Stimmen zu legen? Es geht mir hierbei um Spielanweisungen für eine vierstimmige Fuge und ich will die Tenorstimme mal der linken und mal der rechten Hand zuweisen... Die Klammer müsste also mal vom Tenor aus nach oben zeigen und den Alt und Sopran mit umschließen und mal nach unten zeigen und den Bass mit umschließen.

Gibt es dafür eine Möglichkeit?

Edit: Hab's schon: Einfach \chordBracket in einer Stimme vor der gewünschten Klammer einfügen und an die zu klammernden Noten ein \arpeggio anhängen!  :D Ich als absoluter Programmiersprachen-Neuling freu mich jetzt einfach mal über meinen Erfolg und wünsch euch noch nen schönen Abend!
« Letzte Änderung: Donnerstag, 12. März 2009, 19:14 von Sterndeuter »

Sterndeuter

  • Gast
Re: Arpeggio-Klammern
« Antwort #5 am: Samstag, 14. März 2009, 17:56 »
Jetzt ist doch wieder ein Problem aufgetaucht: Eine der Arpeggio-Klammern befindet sich so dicht neben einem Taktstrich, dass sie mit ihm verschmilzt. Auf dem Ausdruck sind nur noch die beiden horizontalen Enden zu sehen.

Wie kann ich also die Klammer nach rechts verschieben?

tao

  • Gast
Re: Arpeggio-Klammern
« Antwort #6 am: Samstag, 14. März 2009, 18:52 »
Versuchs mal mit
\once \override Score.Arpeggio #'extra-offset = #'(1 . 0)wobei die Zahlen in den Klammer für die x und y-Werte um die das Objekt verschoben wird stehen.
Um das Arpeggio nach rechts zu verschieben musst du also auf jeden fall eine positive Zahl einsetzen, jedoch wirst du ein wenig ausprobieren müssen, bis du den richtigen Wert gefunden hast.

comper

  • Gast
Re: Arpeggio-Klammern
« Antwort #7 am: Samstag, 14. März 2009, 23:46 »
Oder mit einem anderen Arpeggio override:
   #'X-extent =  #'(-0.5 . 0.7)
 -0.5 stösst links (genug?) ab
  0.7 lässt den rechten Abstand etwa gleich.

Gruss

Sterndeuter

  • Gast
Re: Arpeggio-Klammern
« Antwort #8 am: Dienstag, 17. März 2009, 15:58 »
Was genau ist denn der Unterschied zwischen den beiden overrides?

etilli33

  • Gast
Re: Arpeggio-Klammern
« Antwort #9 am: Mittwoch, 18. März 2009, 09:47 »
das erste definiert zusätzlichen Rand, während das zweite zur Breite des Objektse selber was hinzufügt

comper

  • Gast
Re: Arpeggio-Klammern
« Antwort #10 am: Samstag, 21. März 2009, 21:39 »
Beim X-extent an Ellenbogen denken. All diese Dinger drängeln sich gegenseitig.
In diesem Fall halten wir den linken Ellenbogen weiter links (mehr minus).
Aber das grosse Problem beim X-extent ist, zu wissen was schon gilt.
Insiderwissen: beim normalen Arpeggio ist das (0 . 0.8).
Ich habe also links 0.5 mehr beansprucht als die normale Wellenlinie braucht. 
(Und der eckige Klammer braucht eigentlich nur 0.7 in der Breite.)

Beim extra-offset an Matrix-Kämpfen oder z.B. cashback denken.
Alles andere ist erstarrt zur einer fixen Kulisse (das Drängeln hat stattgefunden).
Darauf kann man in X und Y beliebig rücken. Und braucht kein Insiderwissen.
ABER - gerät man zu weit weg vom Taktstrich, gibt's eine Kollision mit der Note.
Der Abstand zwischen Taktstrich und Note bleibt gleich (kein zusätzlicher Rand).

Gruss
« Letzte Änderung: Sonntag, 22. März 2009, 10:36 von comper »