lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Moving note in three-voice context


From: William Rehwinkel
Subject: Re: Moving note in three-voice context
Date: Wed, 17 May 2023 14:40:05 -0400
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.11.0

Dear Jakob,

It must be a nice piece d'orgue ;) (this has lost some of its comedic value as others have already answered)

I can think of two solutions to this problem.

1. You can override NoteHead.extra-spacing-width = #'(left . right). For example, #'(-4 . 0)

so:

% ---
leftOne = \relative c' {
  \global \voiceOne e4 d c h |
  a \change Staff = "right" \voiceTwo  \once \override NoteHead.extra-spacing-width = #'(-4 . 0 ) a' gis a | h2 e, |
}

% ---

2. Insert the following code in the layout block and remove the forst-hshift override:

% ---
    \context {
      \Voice
      \override VoiceFollower.springs-and-rods = #ly:spanner::set-spacing-rods
      \override VoiceFollower.after-line-breaking = ##t
      \override VoiceFollower.minimum-length = #5
      \override VoiceFollower.minimum-length-after-break = #4
    }
% ---

This allows you to set a minimum horizontal length for all VoiceFollower, and if the line would have a shorter horizontal distance, it will be lengthened (this is my personal choice, except I set the glissando properties this way and manually insert glissandos).

Thanks,
-Will

On 5/17/23 13:33, Jakob Pedersen wrote:
Greetings!

I'm attempting to move a note horizontally to fix a poorly placed voice-leading line.

Breitkopf fixes it by nudging the a following the staff change to the right, and I'd like to copy that.



A minimal example from my score:

\version "2.24.1"
\language "deutsch"

global = {
  \key g \major
  \time 4/4
  \showStaffSwitch
  \override VoiceFollower.style = #'dashed-line
}

rightOne = \relative c'' {
  \global \voiceOne h4 h a g | fis!2 f'~ | f4 f e d |
}

rightTwo = \relative c'' {
  \global \voiceTwo g4 f e2 | \voiceThree d2 d'~ | d h |
}

leftOne = \relative c' {
  \global \voiceOne e4 d c h |
  a \change Staff = "right" \voiceTwo \once \override NoteColumn.force-hshift = #3 a' gis a | h2 e, |

}

leftTwo = \relative c' {
  \global \voiceTwo e,2 a | d,2. c4 | h2 h' |
}

pedal = \relative c {
  \global c1~ | c4 c h a | gis2 gis' |
}

\score {
  <<
    \new PianoStaff <<
      \new Staff = "right" << \rightOne \\ \rightTwo >>
      \new Staff = "left" { \clef bass << \leftOne \\ \leftTwo >> }
    >>
    \new Staff = "pedal"
    << \clef bass \pedal >>
  >>
  \layout { ragged-first = ##f }
}


I've included a couple of extra bars because I wasn't sure if it was related to something in those.

\once \override NoteColumn.force-hshift = #3 doesn't seem to work.  (3 was just an arbitrary number to see if it would move.) I can nudge the notes at the beginning of the bar to the left, except the force-hshift fails to work on the tied d in the bass line.

I'm sure there's a simple explanation, but I've been unable to figure it out so far.


Best wishes,

Jakob Pedersen


ps. There's a free imaginary balloon to anyone who recognises the piece.

-- 
+ ------------------------------------------- +
|   William Rehwinkel - Oberlin College and   |
|                          Conservatory '24   |
|        william@williamrehwinkel.net         |
| PGP key:                                    |
| https://ftp.williamrehwinkel.net/pubkey.txt |
+ ------------------------------------------- +

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]