Notationsspezifisch > Noten für Klavier

Klammerzeichen für "linke Hand"/"rechte Hand"

(1/3) > >>

chrispema:
Hallo,

ich würde gerne in meine Noten ein Zeichen für die zu benutzende Hand einfügen, wie es in dem beigefügten Beispiel zu sehen ist.
Ich hatte gehofft, dass Lilypond so ein Zeichen kennt, dem scheint aber nicht so zu sein. Jedenfalls habe ich nach stundenlangem Suchen nichts gefunden.
Da es sich im Grunde nur um zwei Linien handelt, habe ich es mit
\markup { \path 0.25 #'((moveto 0 0)(rlineto -2 0)(rlineto 0 5)) }
versucht, was an sich auch funktioniert. Das Problem ist nur: die Linien sind außerhalb des Notensystems, ich brauche sie aber direkt an der zugehörigen Note. Dafür habe ich leider keine Lösung gefunden.
Kann mir da jemand helfen?

Herzlichen Dank im Voraus!

Christof

lilypond-Version: 2.18.2

RobUr:
Hallo Christof und herzlich willkommen im Forum!

Als sehr guten Auftakt hast Du schonmal in der richtigen Abteilung gepostet. Hilft Dir vielleicht der Beitrag Klammerzeichen für Stimmzuweisung zur jeweiligen Hand aus derselben Abteilung?

Gruß, Robert

chrispema:
Hallo Robert,

danke für den Tipp, diesen Eintrag hatte ich leider übersehen.  ???

An sich gefällt mir der Vorschlag von hansfaust gut, ich würde das aber gerne in Form einer Routine/Variable verwenden, damit ich es nicht für jede Note neu eingeben muss (außerdem müsste ich für jede Note auch jedesmal mühsam die korrekten Koordinaten ermitteln... :o ). Ein Versuch mit Variable (also var = #"..." ./. -markup{\postscript \var}) ergab, dass ich bestenfalls immer dasselbe Ergebnis erhalte, unabhängig von der Notenhöhe. Ist natürlich nicht wirklich zielführend...

Kennt jemand eine Lösung? Ich kenne mich mit Postscript und Scheme (was als Lösungsansatz in einem Thread von sterndeuter angesprochen wurde) leider absolut nicht aus.

Wenn jemand was weiß, würde ich mich sehr freuen!

Musikalische Grüße,
Christof

trulli:
Hallo Christof,

erstmal herzlich Willkommen hier!

Du kannst für das \markup eine Abkürzung schreiben. Hier mal ein Vorschlag dazu:


--- Code: ---\version "2.18.0"

RHK = \markup { %mark it for the right hand
        \postscript #"-1 1 moveto 0 5 rlineto stroke"
        \postscript #"-1.5 1 moveto 2 0 rlineto stroke" }


LHK = \markup { %mark it for the left hand
        \postscript #"-1 6 moveto 0 -5 rlineto stroke"
        \postscript #"-1.5 6 moveto 2 0 rlineto stroke"}

\relative c''
{
c-\LHK
c-\RHK
e-\RHK
e-\LHK
}
--- Ende Code ---

So ein kurzes Beispiel nennt man kompilierbaren Code. Wenn du Fragen oder Änderungswünsche hast, solltest du immer so einen Code in dein Beispiel schreiben. Daraus geht dann auch die Versionsnummer von LilyPond hervor (sehr wichtig) und alle Leute, die antworten, können in den Code gleich ihren Lösungsvorschlag reinschreiben.

Viel Erfolg und
Grüße von Trulli

chrispema:
Hallo Trulli,
vielen Dank für deine Antwort, das ist die Lösung für mein Problem!  :D
Ist ja an sich ganz einfach, nur drauf kommen muss man. Den Umgang mit Variablen muss ich mir wohl noch etwas genauer ansehen...  ???
Perfekt wäre es jetzt noch, wenn der waagerechte Strich immer in der Nähe des Notenkopfes liegen würde (wie in meinem Beispiel gezeigt), aber das würde wahrscheinlich schon Programmierkenntnisse erfordern.
Eine Möglichkeit bestünde natürlich darin, mit vier Variablen zu arbeiten und zu unterscheiden zwischen Noten unterhalb und oberhalb der h-Linie. Ob das aber wirklich brauchbar ist, muss ich erst mal austesten.
Mein erster Versuch damit sieht jedenfalls so aus:


--- Code: ---\version "2.18.0"
\language "deutsch"
RHlow = \markup { %rechte Hand ab 'a' abwärts
            \postscript #"-0.5 0.7 moveto 0 5 rlineto stroke"
            \postscript #"-1.1 0.7 moveto 1.1 0 rlineto stroke" }

RHhigh = \markup { %rechte Hand ab 'h' aufwärts
            \postscript #"-0.5 3 moveto 0 5 rlineto stroke"
            \postscript #"-1.1 3 moveto 1.1 0 rlineto stroke" }

LHlow = \markup { %linke Hand ab 'a' abwärts
        \postscript #"-0.5 3 moveto 0 -5 rlineto stroke"
        \postscript #"-1.1 3 moveto 1.1 0 rlineto stroke"}

LHhigh = \markup { %linke Hand ab 'h' aufwärts
        \postscript #"-0.5 5 moveto 0 -5 rlineto stroke"
        \postscript #"-1.1 5 moveto 1.1 0 rlineto stroke"}

\relative c' {
    g'4-\RHlow
    a-\LHlow
    h-\RHhigh
    c-\LHhigh
}
--- Ende Code ---

Für Ideen, wie man daraus nun eine brauchbare Funktion basteln kann, bin ich natürlich gerne zu haben.  ;)
Ich lass den Thread mal noch ein paar Tage offen...

Mit besten Grüßen,
Christof

P.S. Wie oder wo könnte ich denn mal bei den Entwicklern um eine entsprechende Funktion ersuchen?

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln