Autor Thema: Akzent über einem Handsatz und Ghost Note trotz Handsatz  (Gelesen 3353 mal)

Webfox

  • Gast
Akzent über einem Handsatz und Ghost Note trotz Handsatz
« am: Montag, 27. April 2015, 17:33 »
Hallo,
ich befasse mich seit kurzer Zeit mit Lilypond und bin begeistert, welche Möglichkeiten einem geboten werden. Ich erstelle nur Schlagzeugnoten und habe mit Hilfe der Dokumentation und Euren Beiträgen hier im Forum fast alles so hinbekommen, wie ich es wollte. Vielen Dank für Eure zahlreichen und hilfreichen Beiträge!

Ein, zwei Dinge bekomme ich leider noch nicht hin.

Bei folgendem Code möchte ich, dass der Akzent über dem Handsatz und nicht unter der letzten Notenlinie steht. Wie mache ich das?

sn4 ^"L"-> sn^"L" sn^"L" sn^"L" \break
Außerdem habe ich es bisher nicht hinbekommen, eine Ghost Note ebenfalls mit Handsatz zu definieren.

Also zum Beispiel in diesem Code:

<\parenthesize sn>
den Handsat über der Ghost Note mit anzeigen. Gibt es für <\parenthesize> eigentlich eine Abkürzung? Ist relativ unübersichtlich, wenn viele Ghost Notes verwendet werden sollen.

Ich würde mich freuen, wenn Ihr mir helfen könnt.



trulli

  • Gast
Re: Akzent über einem Handsatz und Ghost Note trotz Handsatz
« Antwort #1 am: Montag, 27. April 2015, 21:11 »
Hallo Webfox und herzlich willkommen hier.

Diese Ansätze sollten dir helfen:
sn4 ^"L"-> sn^"L" sn^"L" sn_"L" \break<\parenthesize sn>^"L"
Zum Schluss eine Bitte: Poste immer ein kompilierbares Minimalbeispiel mit Angabe deiner Lily-Version.

LG

Webfox

  • Gast
Re: Akzent über einem Handsatz und Ghost Note trotz Handsatz
« Antwort #2 am: Montag, 27. April 2015, 22:54 »
Hallo,

das mit der Ghostnote funktioniert. Leider klappt das mit dem Akzent nicht, denn ich möchte, dass dieser über dem Handsatz steht, ohne den Handsatz unter die Note zu setzen.

Hier mal meine bisherige Basisvorlage mit einem Beispieltakt.


\version "2.18.2"

%% Schlagzeugnotation Basis Vorlage

\header {
        title = \markup \center-column { "Titel" }
        subtitle = "Subtitle"
        instrument = \markup \column { "Instrument"  "\n" "\n" }
        piece = "Piece"
        opus = "Opus"
        composer = \markup \column { "\n" "\n" "Autor" }
        copyright = "Copyright"
}

\header { tagline = ##f }

#(define drumset '(
    (bassdrum     default     #f        -3)
    (snare        default     #f         1)
    (hihat          cross     #f         5)
    (pedalhihat     cross     #f        -5)
    (closedhihat    cross     "stopped"  5)
    (openhihat      cross     "open"     5)
   
    (hightom      default     #f         3)
    (lowmidtom    default     #f         2)
    (lowtom       default     #f        -1)
   
    (ridecymbal     cross     #f         4)
    (crashcymbal    cross     #f         6)
    (cowbell           do     #f         3)))

\layout {
indent = #0
line-width = #155
}

\paper {

fonts = #
(make-pango-font-tree
  "Calibri"
  "Calibri"
  "BatangChe"
  (/ (* staff-height pt) 2.5))

%% Definition von Rändern und Abständen

markup-system-spacing #'padding = #'4 %% Abstand zwischen Header und erster Notenzeile

#(define right-margin (* 1.5 cm))
#(define left-margin (* 4 cm))
#(define top-margin (* 1.5 cm))
#(define bottom-margin (* 1.5 cm))

  %% Kopfzeilen auf ungeraden Seiten mit Abfrage "nicht-erste-Seite":
  oddHeaderMarkup = \markup \abs-fontsize #11 \fill-line {
    \on-the-fly #not-first-page \fromproperty #'header:piece
    \on-the-fly #not-first-page \fromproperty #'header:subtitle
    \on-the-fly #print-page-number-check-first \fromproperty #'page:page-number-string
   
    }

  %% für gerade Seiten:
  evenHeaderMarkup = \markup \abs-fontsize #11 \fill-line {
    \fromproperty #'header:piece
    \fromproperty #'header:subtitle
    \on-the-fly #print-page-number-check-first \fromproperty #'page:page-number-string
  }
  %% Fußzeile erste Seite und ungerade Seiten
  oddFooterMarkup = \markup \abs-fontsize #11 {
    \on-the-fly #first-page \fill-line {
      \concat { "Text Fußzeile" }
    }
    \on-the-fly #not-first-page \fill-line {
      "Text Fußzeile"
  }
  }

  %% Abstände zwischen den Systemen & Verhindern eines weißen Randes am Seitenende
  system-system-spacing = #'((padding . 0) (basic-distance . 12))
  %%page-count = #10 (Seitenzahl kann erzwungen werden - optional)
  %%systems-per-page = #8 (Systeme pro Seite können erzwungen werden - optional)
  ragged-last-bottom = ##f
  ragged-bottom = ##f
}

\new DrumStaff
\with {\consists "Parenthesis_engraver" } <<
\set DrumStaff.drumStyleTable = #(alist->hash-table drumset)
\set DrumStaff.instrumentName = #"1"
\numericTimeSignature
\time 4/4
\tempo 4=120
\drummode{
\stemUp
%---------------Hier beginnt der eigentliche Noten Code----------------------------------
sn4 ^"L" -> sn^"L" <\parenthesize sn>^"L" \acciaccatura sn^"R" sn^"L" \break
%---------------Hier endet der eigentliche Noten Code------------------------------------
}
>>

Sicher alles andere als "elegant", aber es funktioniert größtenteils und ich bin schon froh, ganz langsam die Syntax einigermaßen zu verstehen. ;)

Fehlt halt nur der Akzent über dem Handsatz, statt darunter und die Abstände von Kopf- und Fußzeile zum System (dazu hatte ich den Post im anderen Thema).

harm6

  • Gast
Re: Akzent über einem Handsatz und Ghost Note trotz Handsatz
« Antwort #3 am: Dienstag, 28. April 2015, 00:09 »
Hallo,

versuch mal:

\version "2.18.2"

#(define drumset '(
    (bassdrum     default     #f        -3)
    (snare        default     #f         1)
    (hihat          cross     #f         5)
    (pedalhihat     cross     #f        -5)
    (closedhihat    cross     "stopped"  5)
    (openhihat      cross     "open"     5)
   
    (hightom      default     #f         3)
    (lowmidtom    default     #f         2)
    (lowtom       default     #f        -1)
   
    (ridecymbal     cross     #f         4)
    (crashcymbal    cross     #f         6)
    (cowbell           do     #f         3)))
   
\new DrumStaff
  \with {
    \consists "Parenthesis_engraver"
    drumStyleTable = #(alist->hash-table drumset)
    instrumentName = #"1"
    \numericTimeSignature   
  }
  \new DrumVoice
    \with {
      \stemUp
      \override Script.direction = #UP
      \override Script.outside-staff-priority = #451
      \override TextScript.padding = 2
    }
    \drummode {
      \time 4/4
      \tempo 4=120
      sn4^"L"-> sn^"L" <\parenthesize sn>^"L" 
      %% perhaps add:
      \once \textLengthOn
      \acciaccatura sn^"R" sn^"L"
      sn4^"L"-> sn^"L" <\parenthesize sn>^"L" 
      %% or (depends on the actual spacing which may change, though):
      \once \override TextScript.X-offset = #-0.4
      \acciaccatura sn^"R" sn^"L"
    }

HTH,
  Harm

Webfox

  • Gast
Re: Akzent über einem Handsatz und Ghost Note trotz Handsatz
« Antwort #4 am: Samstag, 2. Mai 2015, 14:01 »
Vielen Dank! Das funktioniert.

Aber was genau bewirken: \once \textLengthOn  und \once \override TextScript.X-offset = #-0.4 ?


trulli

  • Gast
Re: Akzent über einem Handsatz und Ghost Note trotz Handsatz
« Antwort #5 am: Samstag, 2. Mai 2015, 22:15 »
Aber was genau bewirken: \once \textLengthOn  und \once \override TextScript.X-offset = #-0.4 ?

Das ist ein schöne Suchaufgabe für die NR:)

Kleiner Tipp: Im Index findest du schon mal \textLengthOn.... und wenn du das mal ausschaltest oder den X-offset Wert änderst, siehst du (auch ohne Doku), was passiert.

Gruß

Webfox

  • Gast
Re: Akzent über einem Handsatz und Ghost Note trotz Handsatz
« Antwort #6 am: Sonntag, 3. Mai 2015, 15:11 »
Also,

\once \textLengthOn bewirkt bei mir sichtbar nichts. Egal ob auskommentiert, oder nicht.

Wenn ich \once \override TextScript.X-offset = #-0.4 auskommentiere oder ändere, verschiebt sich der Handsatz der ersten Note. Ich gehe mal davon aus, dass ich es entweder falsch eingebaut habe, oder sonstwas nicht stimmt, denn das was ich möchte (der Akzent steht über dem Handsatz) passiert auch, wenn beides auskommentiert ist.

Ich füge einmal meine komplette bisherige Vorlage mit ein.

\version "2.18.2"

%% Schlagzeugnotation Basis Vorlage

\header {
        title = \markup \center-column { "Titel" }
        subtitle = "Subtitle"
        instrument = \markup \column { "Instrument"  "\n" "\n" }
        piece = "Piece"
        opus = "Opus"
        composer = \markup \column { "\n" "\n" "Autor" }
        copyright = "Copyright"
}

\header { tagline = ##f }

#(define drumset '(
    (bassdrum     default     #f        -3)
    (snare        default     #f         1)
    (hihat          cross     #f         5)
    (pedalhihat     cross     #f        -5)
    (closedhihat    cross     "stopped"  5)
    (openhihat      cross     "open"     5)
   
    (hightom      default     #f         3)
    (lowmidtom    default     #f         2)
    (lowtom       default     #f        -1)
   
    (ridecymbal     cross     #f         4)
    (crashcymbal    cross     #f         6)
    (cowbell           do     #f         3)))

\layout {
indent = #0
line-width = #155
}

\paper {
 
fonts = #
(make-pango-font-tree
  "Calibri"
  "Calibri"
  "BatangChe"
  (/ (* staff-height pt) 2.5))

%% Definition von Rändern und Abständen

markup-system-spacing #'padding = #'4 %% Abstand zwischen Header und erster Notenzeile

#(define right-margin (* 1.5 cm))
#(define left-margin (* 4 cm))
#(define top-margin (* 1.5 cm))
#(define bottom-margin (* 1.5 cm))


  %% Kopfzeilen auf ungeraden Seiten mit Abfrage "nicht-erste-Seite":
  oddHeaderMarkup = \markup \abs-fontsize #11 \fill-line {
    \on-the-fly #not-first-page \fromproperty #'header:piece
    \on-the-fly #not-first-page \fromproperty #'header:subtitle
    \on-the-fly #print-page-number-check-first \fromproperty #'page:page-number-string
   
    }

  %% für gerade Seiten:
  evenHeaderMarkup = \markup \abs-fontsize #11 \fill-line {
    \fromproperty #'header:piece
    \fromproperty #'header:subtitle
    \on-the-fly #print-page-number-check-first \fromproperty #'page:page-number-string
  }
  %% Fußzeile
oddFooterMarkup =
\markup \abs-fontsize #11 {Copyright}
last-bottom-spacing.padding = 10
%%top-markup-spacing.padding = 10
top-system-spacing.padding = 10


  %% Abstände zwischen den Systemen & Verhindern eines weißen Randes am Seitenende
  system-system-spacing = #'((padding . 0) (basic-distance . 12))
  %%page-count = #10 (Seitenzahl kann erzwungen werden - optional)
  %%systems-per-page = #8 (Systeme pro Seite können erzwungen werden - optional)
  ragged-last-bottom = ##f
  ragged-bottom = ##f
 
}

\new DrumStaff
  \with {
    \consists "Parenthesis_engraver"
    drumStyleTable = #(alist->hash-table drumset)
    instrumentName = #"1"
    \numericTimeSignature   
  }
  \new DrumVoice
    \with {
      \stemUp
      \override Script.direction = #UP
      \override Script.outside-staff-priority = #451
      \override TextScript.padding = 2
    }
    \drummode {
      \time 4/4
      \tempo 4=120
       
      %%
      %%\once \textLengthOn
       
      %%
      %%\once \override TextScript.X-offset = #-0.4


%---------------Hier beginnt der eigentliche Noten Code----------------------------------
sn4 ^"L"-> sn^"L" <\parenthesize sn>^"L" \acciaccatura sn^"R" sn^"L"
<bd hh>8 hh8 <sn hh>8 hh8 <bd hh>8 <bd hh>8 <bd hh>8 hh16 <\parenthesize sn>16
<bd sn>8^"L" sn^"R"-> <bd sn hhp>^"L" sn^"R" <bd sn>^"L" sn^"R" <bd sn hhp>^"L" sn^"R" 
<bd sn>8^"L" sn^"R" <bd sn hhp>^"L" sn^"R" <bd sn>^"L" sn^"R" <bd sn hhp>^"L" sn^"R"
<bd sn>16^"L" sn^"R" sn^"L" sn^"R" <bd sn hhp>^"L" sn^"R" sn^"L" sn^"R" <bd sn>^"L" sn^"R" sn^"L" sn^"R" <bd sn hhp>^"L" sn^"R" sn^"L" sn^"R"
<bd sn>32^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" <bd sn hhp>^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" <bd sn>^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" <bd sn hhp>^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R"
<bd sn>4^"L" <bd sn hhp>8^"L" sn^"R" <bd sn>16^"L" sn^"R" sn^"L" sn^"R" <bd sn hhp>32^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R"
<bd sn>4^"L" <bd tomh hhp>8^"L" tomh^"R" <bd tomml>16^"L" tomml^"R" tomml^"L" tomml^"R" <bd toml hhp>32^"L" toml^"R" toml^"L" toml^"R" toml^"L" toml^"R" toml^"L" toml^"R"
<bd sn>16^"L" sn^"R" sn^"L" sn^"R" <bd sn hhp>^"L" sn^"R" sn^"L" sn^"R" <bd sn>^"L" sn^"R" sn^"L" sn^"R" <bd sn hhp>^"L" sn^"R" sn^"L" sn^"R"
<bd sn>32^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" <bd sn hhp>^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" <bd sn>^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" <bd sn hhp>^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R" sn^"L" sn^"R"
%---------------Hier endet der eigentliche Noten Code------------------------------------
}




harm6

  • Gast
Re: Akzent über einem Handsatz und Ghost Note trotz Handsatz
« Antwort #7 am: Sonntag, 3. Mai 2015, 16:37 »


Das Bild sollte es erklären.

Wenn Du ein (neu erstelltes oder verbessertes) snippet bekommst solltest Du es zunächst unverändert kompilieren und zu verstehen suchen, was was macht.
Ein- und auskommentieren, in den Docs suchen etc.

Wenn dann noch etwas unklar ist, frag nach.

HTH,
  Harm