• Willkommen im Forum „Archiviertes Lilypond Forum (2017)“.
 

Dies ist das Archiv des alten Forums (bis März 2017). Das aktuelle Forum ist unter lilypondforum.de zu finden.
This is the archive of the old forum (until March 2017). You can find the current forum at lilypondforum.de.

Hauptmenü

Barre-Klammer für Gitarristen

Begonnen von trulli, Mittwoch, 14. Oktober 2009, 22:45

Vorheriges Thema - Nächstes Thema

trulli

Liebe Gitarristen, liebes Forum,

ich möchte hier zwei einfache Möglichkeiten vorstellen, Barreklammern für Gitarristen zu notieren:

Über eine Scheme-Funktion:
\version "2.19.0"

%Barre Defintion VERTIKAL (Arp Definition nach comper)
barre = #(define-music-function (parser location grow) (number?)
#{
  \override Arpeggio.stencil = #ly:arpeggio::brew-chord-bracket
  \once \override Arpeggio.positions  = #(lambda (grob)
    (let ((iv (ly:arpeggio::calc-positions grob))
          (grow-hi (max 0 (/ grow 2)))
          (grow-lo (min 0 (/ grow 2))))
      (cons (+ (car iv) grow-lo) (+ (cdr iv) grow-hi))))
  $(make-music 'EventChord 'elements (list (make-music 'ArpeggioEvent)))
#})


<<
  \clef "treble_8"

  \relative c {
   
    \barre #6 %die Zahl definiert die Länge und Ausrichtung des Barres, negative Zahlen zeichnen den Barre nach unten
    c'8^ \markup { \hspace #-.2 "V"} e a e  %\hspace verschiebt die Lagenangabe

    \once \override Arpeggio #'padding = #-.3  %verschiebt die Barreklammer nach rechts oder links
    \barre #6 b8^ \markup { \hspace #-.2 "III"} d g d
  }
  \\
  \relative c, {
    d'2 d  }

>>



oder über \arpeggioBracket in einer versteckten Stimme:

\version "2.12.1"
<<
\clef "treble_8"

\relative c { <e a cis> }
\\
\relative c, { <fis > ^ \markup { \fontsize #-1 { "II" }} }
\\
\relative c, {  \hideNotes               
                \arpeggioBracket
                < fis  cis'' >
                \arpeggio
              }
>>



Ich hoffe das kürzt hier für manchen die Suche ab  :)

Grüße von Trulli


comper

Das letzte Beispiel im NR 1.3.3 Arpeggio zeigt wie es doch geht.   
Weitere Beispiele sind im LSR.

Gruss

trulli

Ja comper, die Beispiele kenne ich. Aber genau deshalb sucht man sich den Wolf, weil der Hinweis unter Arpeggio steht und nicht unter Klammer oder Barre. Die LSR Konstruktion halte ich für viel zu kompliziert, weil man über Layout-Eigenschaften die Zusammenführung der einzelnen Klammern definieren muss.

Ich habe das hier geschrieben, weil bisher in diesem Forum keine einfache Lösung angeboten wurde.

Grüße von Trulli

ding-dong

fragt sich, was da einfacher ist:

  • einmal den Staff - context überschreiben und direkt in den gegebenen stimmen arbeiten
   oder
  • bei jedem barre eine versteckte stimme einführen

die eckige klammer kann übrigens mit
  \override Staff.Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket
erstellt werden (\arpeggioBracket funktioniert hier nicht, da dieser befehl auf den aktuellen kontext beschränkt ist - hier Voice)

im weiteren würde mich interessieren, wie man am einfachsten eine barre-indikation mit gestrichenem C - nur 2-3 saiten werden im barre verwendet - konstruieren würde!

gruss




comper

Eben, versteckte Stimmen erzeugen Nebenproblemen; besonders bei 3-stimmige Gitarrensachen. 

Und die overrides sind mit \once leichter handhabbar; ähnlich chordBracket.

Aber ich fände eine Scheme-Routine noch praktischer:

arpBarre = #(define-music-function (parser location grow) (number?)
#{
  \override Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket
  \once \override Arpeggio #'positions  = #(lambda (grob)
    (let ((iv (ly:arpeggio::calc-positions grob))
          (grow-hi (max 0 (/ $grow 2)))
          (grow-lo (min 0 (/ $grow 2))))
      (cons (+ (car iv) grow-lo) (+ (cdr iv) grow-hi))))
  $(make-music 'EventChord 'elements (list (make-music 'ArpeggioEvent)))
#})


<<
  \clef "treble_8"
 
  \relative c { \arpBarre #-6 <e a cis> }
  \\
  \relative c, { <fis > ^ \markup { \fontsize #-1 { "II" }} }
>>

Auf einer Aussenstimme setzen und die nötige Verlängerung angeben.

Gruss


ding-dong

das sieht super aus - nur schade, dass die position des tiefsten tons der 2. stimme nicht automatisch ermittelt wird!

alternativ könnte ich mir auch vorstellen, den barrebereich mit der obersten und tiefsten einzubeziehenden note einzugeben, auch wenn dann die note der unteren stimme doppelt eingegeben werden muss.

trulli

Zitat von: comper am Donnerstag, 15. Oktober 2009, 11:45
Eben, versteckte Stimmen erzeugen Nebenproblemen; besonders bei 3-stimmige Gitarrensachen. 

Warum? Bei drei Stimmen kann man doch in die vierte den Barre schreiben. Ich habe mir jetzt angewöhnt Dynamiken und Lagenangaben in eine gesonderte Stimme zu schreiben. Der Barre passt da auch noch rein. Finde ich bisher übersichtlicher als ein direktes Überschreiben in den Hauptstimmen.

Trotzdem interessante Lösung mit \arpBarre.

Grüße

comper

Zugemüse wie Dynamiken und Lagenangaben macht kein Problem. 
Aber Noten, mit Kopf und Hals, beeinflüssen/verdrängen Sachen in ihrer Umgebung:
Pausezeichen und die verschiedene Bögen, auch andere Noten. 

Gruss

ding-dong

Zitatim weiteren würde mich interessieren, wie man am einfachsten eine barre-indikation mit gestrichenem C - nur 2-3 saiten werden im barre verwendet - konstruieren würde!

habe gerade im französischen forum gewühlt und dort einen hinweis auf das LSR gefunden: http://lsr.dsi.unimi.it/LSR/Item?u=1&id=632

vivent les fora!

trulli

Ja, diese Schreibweise mit Lily habe ich auch schon gesehen.

In der Gitarrenliteratur kommt das aber fast nie so vor. Wenn, dann wird beim halben Barre (deshalb das durchgestrichene C) die Barreklammer vom C aus nach unten gezogen. Statt durchgestrichenem C wird auch oft 1/2 C geschrieben. Und statt CIII schreibt man heute leichter lesbar das C3.

Die häufigste Schreibweise ist allerdings ohne Barreklammer und nur mit einer Lagenangabe. In den meisten Fällen ergibt sich nämlich aus der Lagenangabe sofort, ob Barre gegriffen werden muss oder nicht. Lagenangabe durch eine römische Zahl mit horizontaler Linie für die Barredauer und einer vertikalen Linie für Barregröße ist zu viel des Guten und erschwert das schnelle Lesen.

Grüße von Trulli

ding-dong

das ist ja das schöne an diesem snippet: du kannst es auf deine wünsche zuschneiden!  :)

die diskussion, was in der girtarrenliteratur alles vorkommt, können wir uns wohl sparen...  ::)

trulli

Es wäre ganz gut, wenn man die Barrenotation vereinheitlichen würde.

Ein schöner Wunsch  ;D

trulli

Heute habe ich mal die Barreklammern mit dem Code von comper geschrieben. Wenn man erstmal weiß, wie man die Zahl bei  \Barre #-6  einstellen muss, geht diese Lösung sehr schnell und problemlos.

Oft muss man den Barre mal nach links oder rechts verschieben, das geht aber mit \once \override Arpeggio #'padding = #3 ganz einfach.

Das ist der Code (mit einem auskommentierten \once \override Arpeggio #'padding = #3):

\version "2.12.1"
Barre = #(define-music-function (parser location grow) (number?)
#{
  \override Arpeggio #'stencil = #ly:arpeggio::brew-chord-bracket
  \once \override Arpeggio #'positions  = #(lambda (grob)
    (let ((iv (ly:arpeggio::calc-positions grob))
          (grow-hi (max 0 (/ $grow 2)))
          (grow-lo (min 0 (/ $grow 2))))
      (cons (+ (car iv) grow-lo) (+ (cdr iv) grow-hi))))
  $(make-music 'EventChord 'elements (list (make-music 'ArpeggioEvent)))
#})

<<
  \clef "treble_8"

  \relative c {
    %\once \override Arpeggio #'padding = #3   
    \Barre #-6  <e a cis> }
  \\
  \relative c, { <fis > ^ \markup { \fontsize #-1 { "II"}} }
>>


Grüße

fingerfertig

Hallo zusammen,

hat jemand ein etwas ausführlicheres Beispiel mit Barres? Bei mir funktionieren beide Varianten nicht. Bei der von rulli sehe ich das erste Barre aber danach tauchen die anderen nicht auf. Zugegebn benutze ich Lilypond nur sporadisch...

VG
fingerfertig

trulli

Hallo,

der Barre muss bei jedem Akkord neu definiert werden.

LG von Trulli

P.S.: Genauere Antworten bekommst du, wenn du deine Versionsnummer angibst und ein Minimalbeispiel postest.