Autor Thema: Gitarrengriffe näher zum System  (Gelesen 7060 mal)

hosios

  • Gast
Gitarrengriffe näher zum System
« am: Donnerstag, 14. Juli 2011, 23:24 »
Hallo,

Ich heisse Paul Janzen, und in Musiklehrer in Paraguay.
Ich versuche Lilypond zu lernen indem ich ein kleines Buch mit Kinderlieder für den Gitarrenunterricht erstelle. Jedes Liede besteht aus Noten, Griffe und ein Vers. Ich habe schon 17 Seiten mit Liedern, aber mir gefällt die Haupteinstellung nicht ganz. Ich möchte die Gitarrengriffe etwas näher zum System, und die Liedtexte eigentlich auch. habe schon rumgesurft, gegooglet usw. aber finde keine Lösung.
Ich möchte diese Einstellung nur einmal ändern, nicht bei jedem Lied.

Hier ein Beispiel:

\version "2.12.3"

\paper {
  page-breaking = #ly:optimal-breaking
  print-page-number = ##t
  ragged-bottom = ##t
  print-first-page-number = ##t
  oddHeaderMarkup = \markup \null
  evenHeaderMarkup = \markup \null
  oddFooterMarkup = \markup {
    \fill-line {
       \on-the-fly #print-page-number-check-first
       \fromproperty #'page:page-number-string
    }
  }
  evenFooterMarkup = \oddFooterMarkup
  print-all-headers = ##t
  #(set-paper-size "a4")
  before-title-space = 30\mm
  after-title-space = 20\mm
  top-margin = 15\mm
  bottom-margin = 15\mm
  between-system-space = 25\mm
  left-margin = 20\mm
  line-width = 170\mm
  tagline = "Paul G. Janzen - 2010  |  made with www.lilypond.org"
}

\score { % 33. Ein kleiner Spatz zur Erde fällt
    <<
    \chords {
       \set chordChanges = ##t
         r4 g2 d g d g c d d g d g d g d:7 g g c g c g c g d d g d g d g d:7 g g4
    }
   
    \new Staff 
    \relative c' {
       \key g \major
       \time 4/4
       \autoBeamOff
       \partial 4 d4 g g a a b d a c b b a g a2. d,4 g g a a b d a c b g a fis g2. \bar "||" d'4 e d b d e d b d e d b d a2. d,4 g g a a b d a c b g a fis g2.
    \bar "|." }
   
   
    \addlyrics {
       Ein klei -- ner Spatz zur Er -- de fällt und Gott ent -- geht das nicht. Wenn Gott die Vö -- ge -- lein so liebt, ich weiss, er liebt auch mich. er liebt auch mich, er liebt auch mich, ich weiss er liebt auch mich! Weil er die klei -- nen Din -- ge liebt, weiss ich, er liebt auch mich.
    }
    >>
    \header {
      title = "33. Ein kleiner Spatz zur Erde fällt"
      composer = "S. W. Straub"
      %arranger = "Satz: Gerhard Ziegler"
      poet = "Maria Straub"
    }
  }

\layout {
   #(define fonts (make-pango-font-tree "Droid Serif" "Droid Sans" "Droid Mono"
   (/ 20 20)))
}

\midi { }



Ich habe etwas mit :

{ \override ChordName #'Y-offset = # -1.2 }

Aber ich komme nicht tief genug. Warscheinlich hat das Pentagramm auch noch eine Einstellung aber ich finde sie nicht.

Danke, schon mal im voraus.
Paul

harm6

  • Gast
Re: Gitarrengriffe näher zum System
« Antwort #1 am: Freitag, 15. Juli 2011, 02:14 »
Hallo Paul,

herzlich willkommen im Forum.

Ich hoffe Du kannst mit dem folgenden etwas anfangen, denn da ich mittlerweile version 2.14.1 benutze kann ich es nicht so richtig testen. (Die Umstellung des ganzen spacing-procedere war die größte Änderung dort.)
Und eigentlich finde ich die Abstände ganz in Ordnung! Aber wenn Du sie doch ändern möchtest:

ChordNames, Lyrics und Score, Staff etc sind eigene context-Umgebungen. Solange Du keine book-Umgebung definierst reicht es \layout zu setzen z.B.:

\layout {
            \context {
                   \Lyrics
                     \override LyricText #'extra-offset = #'(0 . 0.7)
                     \override LyricText #'font-size = #'-1
                     \override LyricHyphen #'extra-offset = #'(0 . 0.7)
                     \override LyricExtender #'extra-offset = #'(0 . 0.7)
            }
            \context {
                   \ChordNames
                     \override ChordName #'extra-offset = #'(0 . -0.5)
                     \override ChordName #'font-size = #'-1
            }
}

um zu erreichen was Dir vorschwebt. (Dasselbe mittels #'Y-offset führt allserdings zu einer fehlerhaften Darstellung)

Falls Du doch \book benutzt lese mal hier nach. Ein ganz wunderbarer Post von RobUr, den ich mit großem Gewinn studiert habe.

Hier noch mal Dein Code mit insgesamt drei (transponierten) Fassungen des Liedes. \midi funktioniert allerdings nur im Score-Block (ist im Moment auskommentiert). Ich hab noch einiges geändert, aber das siehst Du dann ja.

Gruß,
  Harm

\version "2.12.3"

\layout {
            \context {
                \Lyrics
                  \override LyricText #'extra-offset = #'(0 . 0.7)
                  \override LyricText #'font-size = #'-1
                  \override LyricHyphen #'extra-offset = #'(0 . 0.7)
                  \override LyricExtender #'extra-offset = #'(0 . 0.7)
            }
            \context {
                \ChordNames
                  \override ChordName #'extra-offset = #'(0 . -0.5)
                  \override ChordName #'font-size = #'-1
            }
}

\paper {
  page-breaking = #ly:optimal-breaking
  print-page-number = ##t
  ragged-bottom = ##t
  print-first-page-number = ##t
  oddHeaderMarkup = \markup \null
  evenHeaderMarkup = \markup \null
  oddFooterMarkup = \markup {
    \fill-line {
       \on-the-fly #print-page-number-check-first
       \fromproperty #'page:page-number-string
    }
  }
  evenFooterMarkup = \oddFooterMarkup
  print-all-headers = ##t
  #(set-paper-size "a4")
  before-title-space = 30\mm
  after-title-space = 20\mm
  top-margin = 15\mm
  bottom-margin = 15\mm
  between-system-space = 25\mm
  left-margin = 20\mm
  line-width = 170\mm
  tagline = "Paul G. Janzen - 2010  |  made with www.lilypond.org"
  #(define fonts (make-pango-font-tree "Droid Serif"
         "Droid Sans"
         "Droid Mono"
  (/ 20 20)))
}
spatzChords =
\chords {
       \set chordChanges = ##t
         r4 g2 d g d g c d d g d g d g d:7 g g c g c g c g d d g d g d g d:7 g g4
    }
   
spatzMusic = 
\relative c' {
       \key g \major
       \time 4/4
       \autoBeamOff
       \partial 4 d4
       g g a a b d a c b b a g a2. d,4 g g a a b d a c b g a fis g2.
       \bar "||" d'4 e d b d e d b d e d b d a2. d,4 g g a a b d a c b g a fis g2.
    \bar "|." }
   
spatzLyrics =
    \lyricmode {
       Ein klei -- ner Spatz zur Er -- de fällt und Gott ent -- geht das nicht.
       Wenn Gott die Vö -- ge -- lein so liebt, ich weiss, er liebt auch mich.
       er liebt auch mich, er liebt auch mich, ich weiss er liebt auch mich!
       Weil er die klei -- nen Din -- ge liebt, weiss ich, er liebt auch mich.
    }
   
\score { % 33. Ein kleiner Spatz zur Erde fällt in G-Dur
    <<
    \spatzChords
 
    \new Staff 
<<
\new Voice = "Spatz" \spatzMusic
\lyricsto "Spatz" \new Lyrics \spatzLyrics
>>
    >>
    \header {
      title = "33a. Ein kleiner Spatz zur Erde fällt"
      composer = "S. W. Straub"
      %arranger = "Satz: Gerhard Ziegler"
      poet = "Maria Straub"
    }
    %\midi { }
  }
 
\score { % 33. Ein kleiner Spatz zur Erde fällt in A-Dur
    <<
    \transpose g a \spatzChords
   
    \new Staff 
<<
\new Voice = "Spatz" \transpose g a \spatzMusic
\lyricsto "Spatz" \new Lyrics \spatzLyrics
>>
    >>
    \header {
      title = "33b. Ein kleiner Spatz zur Erde fällt"
      composer = "S. W. Straub"
      %arranger = "Satz: Gerhard Ziegler"
      poet = "Maria Straub"
    }
    %\midi { }
  }

\score { % 33. Ein kleiner Spatz zur Erde fällt in H-Dur
    <<
    \transpose g b \spatzChords
   
    \new Staff 
<<
\new Voice = "Spatz" \transpose g b \spatzMusic
\lyricsto "Spatz" \new Lyrics \spatzLyrics
>>
    >>
    \header {
      title = "33c. Ein kleiner Spatz zur Erde fällt"
      composer = "S. W. Straub"
      %arranger = "Satz: Gerhard Ziegler"
      poet = "Maria Straub"
    }
    %\midi { }
  }
« Letzte Änderung: Freitag, 15. Juli 2011, 02:54 von harm6 »

hosios

  • Gast
Re: Gitarrengriffe näher zum System
« Antwort #2 am: Freitag, 15. Juli 2011, 07:42 »
Vielen Dank, für deine Antwort (und deine Mühe)

Ich habe es mit meiner version getestet und es funktioniert super. Gebau was ich suchte.

Ich merke auch, dass ich noch viel zu lernen habe

Das mit den Variabeln werde ich wohl nicht brauchen, oder? Da ich jedes Lied nur einmal verwenden werde (transponieren werde ich die vielleicht einzelnd nach bedarf)

Mit der book-Umgebung bin ich total überfragt. Sollte ich das lieber? Sind insgesamt so 100 Lieder. (ich werde den Post auch noch studieren, nur nicht jetzt denn es ist schon 1:30)

Ich habe da noch eine Frage: (weiss nicht ob ich die lieber in ein neues Thema stellen sollte)

Wie kann ich das verhindern, dass Lilypond eine Zeile allein lässt: im englischen orphan/widow genannt. Ich möchte nähmlich, dass kein Lied auf zwei Seiten geteilt wird. Ich weiss, dass ich dann mehr Seiten haben werde und auch mehr Leerraum. Ich kann dann später immer noch die Einstellung komentieren.



hosios

  • Gast
Re: Gitarrengriffe näher zum System
« Antwort #3 am: Freitag, 15. Juli 2011, 07:59 »
nun, ich muss mich Entschuldigen.

habe mir Lilypond 2.14.0 installiert, und das Resultat ist total anders. Jetzt sehe ich was du meintest mit "Und eigentlich finde ich die Abstände ganz in Ordnung!"

harm6

  • Gast
Re: Gitarrengriffe näher zum System
« Antwort #4 am: Samstag, 16. Juli 2011, 00:09 »
Hallo Paul,

Zitat
Mit der book-Umgebung bin ich total überfragt. Sollte ich das lieber?

kommt drauf an was Dein Ziel ist.
Der Vorteil von \book in Verbindung mit verschiedenen \bookpart ist, daß es sehr leicht fällt für jeden bookpart verschiedene Einstellungen zu generieren (und jeder bookpart beginnt auf einer neuen Seite). Ich verwende \book z.B., wenn ich Ensemble-Partituren und Einzelstimmen in ein file packen möchte.
Falls Du für alle Scores eines files immer dieselben Einstellungen haben möchtest kannst Du vielleicht darauf verzichten.

Zitat
Wie kann ich das verhindern, dass Lilypond eine Zeile allein lässt: im englischen orphan/widow genannt. Ich möchte nähmlich, dass kein Lied auf zwei Seiten geteilt wird.

Einen einzelnen Befehl dafür kenne ich nicht. Du kannst aber den Seitenumbruch nur dort erlauben, wo Du ihn explizit haben willst (im layout: \override NonMusicalPaperColumn #'page-break-permission = ##f) und dann \pageBreak wo gewünscht.

Ich hab' nochmal das obige Beispiel benutzt und nach 2.14.0 konvertiert. Um einen ungünstigen Seitenumbruch zu provozieren (bei auskommentierten page-break-permission- und pageBreak-Befehlen) habe ich einige spacing-Einstellungen im \paper-Block zu unsinnigen Werten verändert. Das gibt jetzt eine Warnmeldung im log, ist aber sowieso nur der Demonstration wegen.

\version "2.14.0"

\layout {
            \context {
            \Score
                  \override NonMusicalPaperColumn #'page-break-permission = ##f
            }
            \context {
                \Lyrics
                  \override LyricText #'extra-offset = #'(0 . 0.7)
                  \override LyricText #'font-size = #'1
                  \override LyricHyphen #'extra-offset = #'(0 . 0.7)
                  \override LyricExtender #'extra-offset = #'(0 . 0.7)
            }
            \context {
                \ChordNames
                  \override ChordName #'extra-offset = #'(0 . -0.5)
                  \override ChordName #'font-size = #'1
            }
}

\paper {
  page-breaking = #ly:optimal-breaking
  print-page-number = ##t
  ragged-bottom = ##t
  print-first-page-number = ##t
  oddHeaderMarkup = \markup \null
  evenHeaderMarkup = \markup \null
  oddFooterMarkup = \markup {
    \fill-line {
       \on-the-fly #print-page-number-check-first
       \fromproperty #'page:page-number-string
    }
  }
  evenFooterMarkup = \oddFooterMarkup
  print-all-headers = ##t
  #(set-paper-size "a4") 
  score-markup-spacing #'basic-distance = #20   
  markup-system-spacing #'basic-distance = #30
  top-margin = 15\mm
  bottom-margin = 15\mm
  system-system-spacing #'basic-distance = #35 
  score-system-spacing #'basic-distance = #15
  left-margin = 20\mm
  line-width = 170\mm
  tagline = "Paul G. Janzen - 2010  |  made with www.lilypond.org"
  #(define fonts (make-pango-font-tree "Droid Serif"
         "Droid Sans"
         "Droid Mono"
  (/ 20 20)))
}
spatzChords =
\chords {
       \set chordChanges = ##t
         r4 g2 d g d g c d d g d g d g d:7 g g c g c g c g d d g d g d g d:7 g g4
    }
   
spatzMusic = 
\relative c' {
       \key g \major
       \time 4/4
       \autoBeamOff%\stemUp
       \partial 4 d4
       g g a a b d a c b b a g a2. d,4 g g a a b d a c b g a fis g2.
       \bar "||" d'4 e d b d e d b d e d b d a2. d,4 g g a a b d a c b g a fis g2.
    \bar "|." }
   
spatzLyrics =
    \lyricmode {
       Ein klei -- ner Spatz zur Er -- de fällt und Gott ent -- geht das nicht.
       Wenn Gott die Vö -- ge -- lein so liebt, ich weiss, er liebt auch mich.
       er liebt auch mich, er liebt auch mich, ich weiss er liebt auch mich!
       Weil er die klei -- nen Din -- ge liebt, weiss ich, er liebt auch mich.
    }
   
\score { % 33. Ein kleiner Spatz zur Erde fällt in G-Dur
    <<
    \spatzChords
 
    \new Staff 
<<
\new Voice = "Spatz" \spatzMusic
\lyricsto "Spatz" \new Lyrics \spatzLyrics
>>
    >>
    \header {
      title = "33a. Ein kleiner Spatz zur Erde fällt"
      composer = "S. W. Straub"
      %arranger = "Satz: Gerhard Ziegler"
      poet = "Maria Straub"
    }
    %\midi { }
  }
 
\score { % 33. Ein kleiner Spatz zur Erde fällt in A-Dur
    <<
    \transpose g a \spatzChords
   
    \new Staff 
<<
\new Voice = "Spatz" \transpose c d \spatzMusic
\lyricsto "Spatz" \new Lyrics \spatzLyrics
>>
    >>
    \header {
      title = "33b. Ein kleiner Spatz zur Erde fällt"
      composer = "S. W. Straub"
      %arranger = "Satz: Gerhard Ziegler"
      poet = "Maria Straub"
    }
    %\midi { }
  }

\pageBreak      %<==================================
 
\score { % 33. Ein kleiner Spatz zur Erde fällt in H-Dur
    <<
    \transpose g b \spatzChords
   
    \new Staff 
<<
\new Voice = "Spatz" \transpose g b \spatzMusic
\lyricsto "Spatz" \new Lyrics \spatzLyrics
>>
    >>
    \header {
      title = "33c. Ein kleiner Spatz zur Erde fällt"
      composer = "S. W. Straub"
      %arranger = "Satz: Gerhard Ziegler"
      poet = "Maria Straub"
    }
    %\midi { }
  }
 

Viele Grüße nach Paraguay,
  Harm

hosios

  • Gast
Re: Gitarrengriffe näher zum System
« Antwort #5 am: Samstag, 16. Juli 2011, 04:16 »
Hallo, Harm

Zitat
Falls Du für alle Scores eines files immer dieselben Einstellungen haben möchtest kannst Du vielleicht darauf verzichten.
Ja, das werde ich dann auch.

Zitat
und dann \pageBreak wo gewünscht.
Ok, werde dann noch entscheiden ob ich es nicht doch so lassen werde. Möchte nicht viele manuelle Pagebrakes einfügen.

Zitat
Viele Grüße nach Paraguay,
Danke :)