Deutsches Lilypond Forum (Archiv)
Allgemein => Hilfe beim Einstieg in Lilypond => Thema gestartet von: flashgordonx am Freitag, 16. Oktober 2015, 19:11
-
Hallo liebe Forumbesucher
Wie kann ich Schrägstrichen und die anderen Karakter erstellen. (Ich habe im Lilypond-Helfer Schrägstrich nur mit Punkte gefunden. :)
-
\version "2.19.28"
\language "deutsch"
<<
\new ChordNames \chordmode {
f2:m7 b:m7
}
\new Staff \relative {
\key f \minor
c'4. c8 c4 b8 c
}
\new Staff \with {
\consists Pitch_squash_engraver
\omit Stem
\improvisationOn
} {
\clef bass
\key f \minor
4 4 4 4
}
>>Mehr dazu findest du in Abschnitt 1.2.3 und 2.7.2 der Notationsreferenz.
-
Danke.
Theoritisch funktioniert dein Code, nachdem ich die erste Zeile \version "2.18.2" und statt "4 4 4 4" "c c c c" korrigiert habe. Obwohl ich früher Klavierstimme geschrieben habe; kann ich nicht sie in deinem hinzufügen. (Bzw. kann ich nicht die Bassstimme aus deinem Code zu meinem hinzufügen.)
Hiermit sende ich Klaviertstimme /right/
\version "2.18.2"
\header {
title = "Forbidden Love"
composer = "Nikos Pogonatos"
poet = "Piano"
tagline = ""
}
global = {
\key f \minor
\time 4/4
\tempo "Adagio" 4=68
}
% \times 2/3 { }
right = {
\global
\set Score.skipBars = ##t R1*3^\markup { \bold\fontsize #-2 "RUBATO" }
r1\fermata ^\markup { \bold\fontsize #-2 "RITARDANDO" }\bar "||"
c'4.^\markup { \bold\fontsize #-2 "RUBATO" } c'8 c'4 bes8 c'(c'2) g'4. f'8 c'2 bes8 [c'8] des' [es'] c'4(\( \times 2/3 { c'8) bes\) as } g2
c'4. c'8 c' bes4 c'8 (c'2) \times 2/3 { bes4 c' bes } as2 g8 [f] g as
<< { \voiceOne r8\(^\markup { \bold\fontsize #-2 "RITARDANDO" }\( c'' f'' g'' <f'' g'' c'''>2\)\arpeggio }
\new Voice { \voiceTwo {
<bes d' f' bes'>1
}} >>
c'2 d'8 e' [f'] g' c'2 d'8 e' [f'] g' c'2 d'8 e' [f'] g' a'2 f'4 a' g'1
g'2 es'8 g' [as'] des'' g'2(g'8) [f'] (g') f' e'2 f'8 [e'] f' [as'] g'2.^\markup { \bold\fontsize #-2 "RITARDANDO" } r4 \bar "||"
%első oldal vége
<< { \voiceOne f'8\( [e'] es' d'\) <des' f' as'>2 }
\new Voice { \voiceTwo { <c' as>2
}} >>
f'2 g'8 f' [es'] des' (c'2) g'8 f' [es'] des' (c'2.) es'8 g'
as'2 g'8 f' [g'] bes' as'2 g'8 [f'] c'' bes' as'2 as'8 g' [f'] e' \bar "||"
es'2.^\markup { \bold\fontsize #-2 "A TEMPO" } r4 R1*7
\key g \minor
d'4. d'8 d'4 c'8 d' (d'2) a'4. g'8 d'2 bes8 [c'] d' f' d'4( \times 2/3 { d'8 )c' bes } a2
%második oldal vége
d'4. d'8 d' c'4 d'8 (d'2) \times 2/3 {c'4 d' c' } bes2 a8 [g] a bes g2. d'4 \bar "||"
}
left = \relative c' {
\global
%R1*40
}
\score {
\new PianoStaff \with {
instrumentName = "Klavier"
} <<
\new Staff = "right" \right
\new Staff = "left" { \clef bass \left }
>>
\layout { }
}
Meine Frage wären: Kannst du mir richtig hinzufügen bzw. wie man die dicke Linie (unten) weglöschen kann? Vielen Dank für die Antwort. 8)
-
Theoritisch funktioniert dein Code, nachdem ich die erste Zeile \version "2.18.2" und statt "4 4 4 4" "c c c c" korrigiert habe.
Deswegen gib bitte immer deine verwendete LilyPond-Version an. In 2.19.28 funktioniert meine Version nämlich wunderbar.
Obwohl ich früher Klavierstimme geschrieben habe; kann ich nicht sie in deinem hinzufügen. (Bzw. kann ich nicht die Bassstimme aus deinem Code zu meinem hinzufügen.)
Deswegen gib bitte immer ein Minimal-Codebeispiel an, welches deine Situation darstellt, dann können Leute, die dir helfen wollen, gleich die Lösung an deine Situation anpassen.
Hiermit sende ich Klaviertstimme /right/
[…]
Das ist zwar ein Codebeispiel, aber es ist nicht minimal. Und es stellt deinen Versuch, meine Lösung einzubauen, nicht dar (denn anscheinend hast du ja schon was probiert, laut deinem angehängten Bild). So könnte ein Minimalbeispiel aussehen:
\version "2.18.2"
global = {
\key f \minor
\time 4/4
}
right = {
\global
R1*3
}
left = \relative c' {
\global
% hier die Schrägstriche
}
\score {
\new PianoStaff <<
\new Staff = "right" \right
\new Staff = "left" { \clef bass \left }
>>
}
Und wie man hier sehen kann, ist das schon nah an dem dran, was ich als Lösung gezeigt hatte: Das Entscheidende ist der \with-Block des unteren Systems, den du einfach zu deinem unteren System ("left") hinzufügen musst.
Meine Frage wären: Kannst du mir richtig hinzufügen bzw. wie man die dicke Linie (unten) weglöschen kann? Vielen Dank für die Antwort. 8)
Die dicke Linie ist ein Balken. Per \omit Stem habe ich ja die Hälse weggelassen, anders als deine fotografierte Vorlage willst du aber anscheinend Achtel, du musst also zusätzlich per \omit Beam auch die Balken weglassen.
-
Ich habe \With block hinzufügen, aber Fehlermeldung bekommen. :( Außerdem bei Akkord, dass du mir geschrieben hast, fehlt leider ein "i" ( Fm7 statt Fmi7 )
\version "2.18.2"
global = {
\key c \major
\time 4/4
\tempo 4=100
}
chordNames = \chordmode {
\global
f2:m7 b:m7
}
right = \relative c'' {
\global
}
left = \relative c' \with {
\consists Pitch_squash_engraver
\omit Stem
\improvisationOn
} {
\clef bass
\key f \minor
c c c c
}
{
\global
% Die Noten folgen hier.
}
chordsPart = \new ChordNames \chordNames
pianoPart = \new PianoStaff \with {
instrumentName = "Klavier"
} <<
\new Staff = "right" \right
\new Staff = "left" { \clef bass \left }
>>
\score {
<<
\chordsPart
\pianoPart
>>
\layout { }
}
(Leider verstehe ich noch immer nicht die Logik von Lilypond nur ich mag die schöne Noten :) )
-
Ich habe \With block hinzufügen, aber Fehlermeldung bekommen.
Der \with-Block muß zum Staff mit Namen "left", nicht zur Variablen, die so heißt.
Außerdem bei Akkord, dass du mir geschrieben hast, fehlt leider ein "i" ( Fm7 statt Fmi7 )
Nein, es fehlt nicht! Vielmehr gibt es zahlreiche Möglichkeiten einen moll-Akkord zu schreiben. Ein kleines "m" ist schlichtweg international das häufigste und somit der default, den man aber mittels minorChordModifier = <what-ever> im Score-context ändern kann:
\version "2.18.2"
global = {
\key f \minor
\time 4/4
\tempo 4=100
}
chordNames = \chordmode {
\global
f2:m7 b:m7
}
right = \relative c'' {
\global
g1
}
left = \relative c' {
\global
\clef bass
c4 c c c
}
chordsPart =
\new ChordNames \chordNames
pianoPart =
\new PianoStaff
\with { instrumentName = "Klavier" }
<<
\new Staff = "right" \right
\new Staff = "left"
\with {
\consists Pitch_squash_engraver
\omit Stem
\improvisationOn
}
{ \clef bass \left }
>>
\score {
<<
\chordsPart
\pianoPart
>>
\layout {
\context {
\Score
minorChordModifier = #(make-simple-markup "mi")
}
}
}
HTH,
Harm
-
Jetzt hab ich grad ne Antwort geschrieben, da fällt mir auf, dass ich diesen Tab einfach seit ner Stunde offen hatte und du mir zuvorgekommen bist ;) Eine Frage hab ich aber zu deiner Lösung:
minorChordModifier = #(make-simple-markup "mi")
Was macht make-simple-markup? Ich sehe keinen Unterschied in der Ausgabe zu
minorChordModifier = "mi"
Ach ja, zum Thema „Fm ist häufigste Schreibweise“: Ich habe im Studium ein schönes Fach namens „schulpraktisches Klavierspiel“, wo ich Noten aus diversen verschiedenen Quellen zu sehen bekomme: da ist noch nie "f" (Kleinbuchstaben) und kaum "Fmi" für f-Moll aufgetaucht, und "Fm" war wesentlich häufiger als "F-". Die verschiedenen Schreibweisen für major-7-Akkorde sind da z. B. wesentlich gleichmäßiger gestreut (maj7, Δ, j7, ma7 (letzteres zusammen mit mi für Moll)).
Am besten zu lesen (vermutlich aus Gewohnheit) finde ich „Fm“ und „Fmaj7“ und bis auf das „m“ für Moll alle Ergänzungen (♭5, 6, sus4, maj7, add9, ø, o7, …) hochgestellt.
-
minorChordModifier = #(make-simple-markup "mi")
Was macht make-simple-markup? Ich sehe keinen Unterschied in der Ausgabe zu
minorChordModifier = "mi"
In der scheme-sandbox:
~$ lilypond scheme-sandbox
GNU LilyPond 2.19.29
Processing `/home/harm/lilypond/usr/share/lilypond/current/ly/scheme-sandbox.ly'
Parsing...
guile> (string? "mi")
#t
guile> (markup? "mi")
#t
guile> (define test (markup #:simple "mi"))
guile> test
(#<procedure line-markup (layout props args)> ((#<procedure simple-markup (layout props str)> "mi")))
guile> (string? test)
#f
guile> (markup? test)
#t
guile>
simple-markup ist so definiert (doc-string etc deleted):
(define-markup-command (simple layout props str)
(string?)
(interpret-markup layout props str))
Mit anderen Worten:
"mi" ist in scheme ein string, eine bestimmte Datenstruktur.
In LilyPond ist "mi" ein string welcher aber auch true für markup? zurückgibt.
Jedoch: \markup { \simple "mi" } hat eine markup-Signatur und ist somit kein string mehr.
Tatsächlich ist das Ganze Haarspalterei oder vielleicht auch der üblichen Programmiererparanoia geschuldet, denn der Wert für minorChordModifier wird sowieso nur in einem markup gebraucht, falls mein Gedächtnis nicht trügt.
Gruß,
Harm
-
Danke für die Alle! :) Es ist ganz toll worden. 8) Ich bin ganz nähe die erste Partitur meines Lebens. :P
Noch eine Frage: Was soll ich tue, wenn ich in einem Takt Noten schreiben soll? ( Bass) :)
-
Noch eine Frage: Was soll ich tue, wenn ich in einem Takt Noten schreiben soll?
Du solltest den Pitch_squash_engraver in einen Voice-context packen und dann mit \improvisationOn/Off sowie (\undo) \omit Stem arbeiten:
\version "2.18.2"
\new Staff = "left"
\new Voice
\with {
\consists Pitch_squash_engraver
}
{
\clef bass
\improvisationOn
\omit Stem
c4 c c c
\improvisationOff
\undo \omit Stem
c4 c c c
\improvisationOn
\omit Stem
c4 c c c
}
HTH,
Harm
-
Ich befürchte, dass es mir zu große Herausforderung wird. :o Jetzt kann ich sowohl Schrägstriche als auch Noten schreiben. Aber die Schrägstriche haben verändert.
\version "2.18.2"
global = {
\key c \major
\time 4/4
\tempo 4=100
}
right = \relative c'' {
\global
% Die Noten folgen hier.
}
left = \relative c' {
\global
\improvisationOn
\omit Stem
c4 c c c
\improvisationOff
\undo \omit Stem
c4 c c c
\improvisationOn
\omit Stem
c4 c c c
}
\score {
\new PianoStaff \with {
instrumentName = "Klavier"
} <<
\new Staff = "right" \right
\new Staff = "left"
\with {
\consists Pitch_squash_engraver
}
{ \clef bass \left }
>>
\layout { }
}
-
Voice-context !!
s.o.
Bin in Eile,
Harm
-
Passt schon. Danke :)