2016-05-21 4 views
0

私は、John Fieldの「Nocturne n°5」という短いピアノ作品をタイプセットしようとしています。私の主な問題は、グルペットがナチュラルサインで遅れたターンとしてレンダリングされるバー14,17,38で発生します。遅延ターンを確実に表示する方法は?

これは、それはあなたがインターネット上で見つけることができるエディションのいずれかでどのように見えるかです:

enter image description here

私は自分自身を達成することができますどのようなこの:

enter image description here

これは、私が試したコード:

\ version "2.8.12"

upper = \relative c'' { 
    \key bes \major 
    \time 12/8 

%bar 14 

    d4.-> c2. 
    << 
    { 
     c4.(f4. ees4 c8 bes4. c4. 
     des2.~\sf des4.) 
    } 
    \\ 
    { 
     % we create the following sequence: { r8 d16 c16 b16 c16 } 

     s8 
     \single \hideNotes d16 
     \single \hideNotes c16 
     \single \hideNotes \once \set suggestAccidentals = ##t 
     \single \hideNotes \once \override AccidentalSuggestion #'outside-staff-priority = ##f 
     \single \hideNotes \once \override AccidentalSuggestion #'avoid-slur = #'inside 
     \single \hideNotes \once \override AccidentalSuggestion #'font-size = #-3 
     \single \hideNotes \once \override AccidentalSuggestion #'script-priority = #-1 
     \single \hideNotes b16-\turn 

     \single \hideNotes c16 

     % those spaces are to align with the second voice 
     % kept in the for the duration of the phrasing slur 

     s2. s2. 
     s2. s4. 
    } 
    >> 
} 

lower = \relative c { 
    \key bes \major 
    \time 12/8 

%bar14 

    e8[(\sustainOn c'8 bes8 g'8 c,8 bes8] 
    e,8[ g'8 bes,8] 
    ees,8[ \sustainOn f'8 a,8]) 

    d,8[(\sustainOn f'8 bes,8] 
    ees,8[ \sustainOff c'8 g8] 
    f8[ d'8 bes8] 
    f8[ ees'8 a,8]) 

} 

\score { 
    \new PianoStaff 
    << 
    \new Staff = "upper" { \clef treble \upper } 
    \new Staff = "lower" { \clef bass \lower } 
    >> 
    \layout { } 
} 

私は、一時的なポリフォニック・パッセージを作成することにしましたが、上または下の声を隠す選択肢があります。私は両方を試してみましたが、レンダリングされた声を上側に保ち、下側の声を隠しておく方が理にかなっています。しかし、これはターンをスタッフの下部に現わせる。

編集

私は今試して他人のためにコンパイルする必要がありスニペットで質問を更新しました。私の主な問題は、遅れたターンが句読点をはさんで通過する必要があるということです。私はシングルボイスとマルチボイスのパッセージ間でスラースパンを持つ方法を見つけることができなかったので、遅延フォールドパートよりも長い間、ポリフォニックパッセージを長く保つ必要があります。

ターンと偶然の配置の改善方法を教えてください。

答えて

3

あなたの更新された例では、問題は異なるので、私は新しい回答を追加しています。 一時的なポリフォニック・パッセージで二重バックスラッシュ構造を使用していて、そのターンがスタッフの下に表示されています。これは明白に声を決して定義しないために起こります。表記リファレンス1.5.2に:

< < {...} \ {...} >>構築、ここで2つ(またはそれ以上) が二重バックスラッシュによって分離されている式、 同様の構築物に異なる動作二重バックスラッシュなし:この構文内のすべての式 は、新しいVoiceコンテキストに割り当てられます。これらの新しい 音声コンテキストは暗黙的に作成されます..

LilyPondは最初の音声に\ voiceOneを割り当て、2番目の音声に\ voiceTwoを割り当てます。 \ voice2では、\ turnと他の同様のオブジェクトがスタッフの下に表示されます。私はExplicitly instantiating voicesを読むことをお勧めします。

ソリューション:いずれか\\を削除するか、一時的なポリフォニックの通路の第二声で\voiceThreeを追加(\ voiceOneは暗黙的に通路の最初の声で使用されていて、第二に、それを使用する場合は、必要がありますあなたが\ voiceThreeを必要とする理由です)。

+0

素晴らしいです、ありがとう! –

0

\マークアップブロック内で\ turnを使用しないでください。代わりに、ノートにすぐにそれを添付:

\once \hideNotes b16-\turn 

ちなみに、これはthe example in the lilypond documentationです。

私は最初からそれを再現して、私はあなたのスニペットをコンパイルすることができませんでした(免責事項:私はピアノを演奏していないと、私の音楽の知識が限られている)が、それは私には罰金になります。

\version "2.19.40" 

global = { 
    \key bes \major 
    \numericTimeSignature 
    \time 12/8 
} 

right = \relative c'' { 
    \global 
    % bar 14 
    << 
    { d4.-> c2. c4.-2(| } 
    { 
     s1 s4 
     \once \set suggestAccidentals = ##t 
     \once \override AccidentalSuggestion.outside-staff-priority = ##f 
     \once \override AccidentalSuggestion.avoid-slur = #'inside 
     \once \override AccidentalSuggestion.font-size = -3 
     \once \override AccidentalSuggestion.script-priority = -1 
     \single \hideNotes 
     b4-\turn 
    } 
    >> 
    f'4.-5) ees4-3 
} 

left = \relative c { 
    \global 
    % bar 14 
    e8\sustainOn([ c' bes g' c, bes] e, g' bes, ees,\sustainOn f' a,) | 
    ees8\sustainOn f' bes,-2 f-5\sustainOff 
} 

\score { 
    \new PianoStaff 
    << 
    \new Staff = "right" \right 
    \new Staff = "left" { \clef bass \left } 
    >> 
    \layout { } 
} 

enter image description here

+0

フィードバックいただきありがとうございます。あなたの例がうまくいく間、私はそれを動作させることができないので、元の質問のスニペットを更新しました。私の問題は、踏み台の間に遅れたターンを表示することからです。更新されたスニペットを見てみませんか? –

関連する問題