Lilypond Leadsheet

J
JM0
Registrierter Benutzer
Zuletzt hier
11.12.22
Registriert
16.06.14
Beiträge
701
Kekse
633
Hallo,

ich möchte in Lilypond ein sehr simples Leadsheet erstellen. Im Prinzip sollte es Folgendes Layout haben:

___

Titel

Intro
l: A B Cm F# l F# :l

Verse
l A F A l A G l
l: A B :l x4

___

Mein Problem ist dass ich die Akkorde nicht ins Notensystem bekomme. Es sollen keine Notenlinien zu sehen sein. Ich möchte eigentlich nur die Akkordnamen, getrennt von Taktstrichen und vielleicht von Wiederholungen haben. Die Tonart schreibe ich meist eh in die Titelzeile.

Hat jemand so eine Vorlage?
 
Eigenschaft
 
Es sollen keine Notenlinien zu sehen sein. Ich möchte eigentlich nur die Akkordnamen, getrennt von Taktstrichen und vielleicht von Wiederholungen haben.

Hallo JM0,

eigentlich wäre für solch eine Anwendung eher eine Textverarbeitung geeignet...
Aber wollen wir mal sehen:

Um mit LilyPond Akkordsymbole zu schreiben, empfiehlt sich - schon aufgrund der Aufbereitung - die ChordNames-Umgebung.
Hauptproblem ist hier, daß die Taktstriche fehlen.
Die kann man aber hinzugewinnen, indem man bei den ChordNames auch den "Bar_engraver" mit einbindet, der ist nämlich für den Druck der Taktstriche verantwortlich.
Dann sind noch ein paar kleinere Einstellungen vonnöten, vor allem muß die Länge der Taktstriche festgelegt werden. Hierfür ist die Eigenschaft bar-extent zuständig. Wenn man das unterläßt, sieht man trotzdem keine Taktstriche, denn die (nicht vorhandene) Notenzeile hat die Höhe 0, an der sich auch die automatische Länge der Taktstriche orientiert.

Und so weiter und so weiter (siehe Kommentare im Quellcode).
Die Abschnitte wie "Intro" oder "Verse" habe ich als Rehearsal Marks (Studierzeichen) realisiert - diese werden nur auf kursive Schrift und Linksbündige Anordnung über dem Taktbeginn voreingestellt.
Wiederholungen (auch bei Bedarf mit Voltenklammern) gehen wie übliche mit \repeat-Befehl.
Zusatzangaben wie "4x" über Taktstrichen lassen sich mit dem neu definierten Befehl \barText eingeben, den Luxus gönne ich mir, damit man nicht immer mit den Rehearsal Marks in Konflikt kommt.

Eine einfache Vorlage als Ausgangsbasis würde etwa so aussehen:

Code:
\version "2.18.2"


\layout {
  indent = #0                                             % 1. Zeile nicht einrücken
  ragged-right = ##t                                      % kein "Blocksatz"
  \context {
    \Score
    \remove "Bar_number_engraver"                         % Keine Taktnummern!
    proportionalNotationDuration = #(ly:make-moment 1/4)  % Proportionaler Platzverbrauch
    \override RehearsalMark.self-alignment-X = #LEFT      % Rehearsal Marks linksbündig
    \override RehearsalMark.padding = #4                  % Abstand Rehearsal Marks zu den Akkorden
    \override RehearsalMark.font-shape = #'italic         % Rehearsal Marks kursiv
  }
  \context {
    \ChordNames
    \consists "Bar_engraver"                              % Taktstriche auch bei Akkordnamen
    \override BarLine.bar-extent = #'(-2 . 2)             % Länge der Taktstriche nach unten/oben
    \override BarLine.Y-offset = #1                       % Y-Versatz der Taktstriche nach oben
    \override BarLine.hair-thickness = #2                 % "dünne" Linie etwas dicker
    \override BarLine.kern = #4                           % Abstand zwischen Punten/Strichen
    \override BarLine.thick-thickness = #2                % "dicke" Linie etwas dünner (beide Linien gleich dick)
  }
}

% Diese FUnktion setzt einen Markup-Text über den Taktstrich:
barText =
#(define-music-function
     (parser location m)
     (markup?)
   #{
      \once \override BarLine #'stencil =
      #(lambda (grob)
      (ly:stencil-combine-at-edge
      (ly:bar-line::print grob)
      Y UP
      (grob-interpret-markup grob (markup
         #:italic
         #:with-dimensions '(0 . 0) '(0 . 0)
         m))
      1))
   #})



% B E I S P I E L

\new ChordNames \chordmode {
  \bar ".|:"
  \repeat volta 2 {
    \mark \markup "Intro"
    a4 b c:m fis |
    fis1 |
  }
  \break
  \mark \markup "Verse"
  a2 f4 a |
  a2 g |
  \break
  \repeat volta 4 {
    a2 b \barText "4x"
  }
}

(Alles vor "% B E I S P I E L" kannst Du in eine Include-Datei hängen, die läßt sich dann immer einbinden)


Dein Beispiel von oben mit dieser Vorlage:

lily-chord-leadsheet.png


Das Wiederholungszeichen ganz am Anfang muß man explizit eingeben (mit \bar ".|:"), weil üblicherweise in Noten öffnende Wiederholungszeichen am Beginn eines Stückes nicht gedruckt werden.

Außerdem habe ich proportionales Spacing eingestellt, damit man anhand der Abstände zwischen den Akkorden besser deren Dauer erkennen kann. Wie weit oder eng das ganze läuft, läßt sich ändern, indem man bei
proportionalNotationDuration = #(ly:make-moment 1/4)
den Zahlenwert anpaßt.

Viele Grüße
Torsten
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: 1 Benutzer

Ähnliche Themen


Unser weiteres Online-Angebot:
Bassic.de · Deejayforum.de · Sequencer.de · Clavio.de · Guitarworld.de · Recording.de

Musiker-Board Logo
Zurück
Oben