Autor Thema: Automatische \oneVoice bei unsichtbaren Pausen  (Gelesen 1361 mal)

iugin

  • Member
Automatische \oneVoice bei unsichtbaren Pausen
« am: Freitag, 8. Mai 2015, 20:37 »
So, ich wieder :)

Wenn ich Mehrstimmigkeit in einem System habe, und die 2. Stimme unsichtbare Pausen hat, finde ich nicht schön, wenn in der erste Stimme Hälse und Bögen nach oben gerichtet sind.
So habe ich eine Funktion geschrieben, welche vorübergehend auf \oneVoice umschaltet (das ständigen Tippen von \oneVoice ... \voiceOne war ein bisschen mühsam).
Sie sieht so aus:
\version "2.18.2"
\language "deutsch"

tmpOneVoice = #(define-music-function (parser location d m)(integer? ly:music?)               
                 ;; Das erste Argument ist die urspüngliche Stimme
                 ;; wenn ich von \voiceTwo komme, ist dann das Befehl
                 ;; \tmpOneVoice #2 { ... }
                 #{
                   \oneVoice
                   $m
                   #(cond ((= d 1) #{ \voiceOne #})
                      ((= d 1) #{ \voiceOne #})
                      ((= d 2) #{ \voiceTwo #})
                      ((= d 3) #{ \voiceThree #})
                      ((= d 4) #{ \voiceFour #})
                      )
                 #}
                 )

\score {
  \new Staff <<
   \relative g'' {
     g4 g4 \tmpOneVoice #1 { g4 g4 }
     g4 g4 g4 g4
     
   }
   \\
   \relative g' {
     g4 g4 s2
     g4 g4 g4 g4
     
   }
  >>
}
Meine Frage: geht das Automatisch? Lilypond merkt, dass z.B. in einem Takt nur unsichtbare Pausen sind und schaltet auf \oneVoice?

Danke und einen Gruss an alle!

Eugenio

Ps: sorry, mein Deutsch ist heute Abend ziemlich akrobatisch... :)

harm6

  • Member
Re: Automatische \oneVoice bei unsichtbaren Pausen
« Antwort #1 am: Samstag, 9. Mai 2015, 00:00 »
Hallo Eugenio,

es mag mit einem engraver gehen.
Aber ehrlich gesagt, da hab ich im Moment zu wenig Zeit für.

Tut mir leid,
  Harm

iugin

  • Member
Re: Automatische \oneVoice bei unsichtbaren Pausen
« Antwort #2 am: Samstag, 9. Mai 2015, 14:17 »
Lieber Harm

no problem :)
Du hast mir schon im anderen Post sehr geholfen.

Einen lieben Gruss

Eugenio