[Top][All Lists]

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

Re: Spacer Rests Global Confusion

From: David Kastrup
Subject: Re: Spacer Rests Global Confusion
Date: Thu, 26 Apr 2018 19:34:55 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux)

R <address@hidden> writes:

> When the duration of the called variable is explicitly given,
> everything is correct. However, if you remove the duration and have it
> default to the normal quarter note, this causes a problem. But it
> shouldn't.
> % this snippet has 16th notes which is broken and wrong
> \version "2.19.81"
> global = {
>  \tempo "Very Fast"
>  s16*2 \tempo "New Tempo"
> }
> calledvariable = { c d }
>  \new Staff { \calledvariable }
> %
> This shows the default duration as a sixteenth note which should be
> NOT even considered since it's within an uncalled variable. So why is
> this spacer value magically applied to music when it resides it a
> completely uncalled variable? This makes no sense to me. Even this
> snippet makes things worse.

You are laboring under the wrong impression that there is a "default
duration" of a quarter note.  There isn't.  The _initial_ default
duration is that of a quarter note.  Whenever a duration is entered as a
note or chord or s or syllable length, it becomes the new default

Default durations are not tracked in music, but are a property of the
parser.  Calling some music variable does not change the default
duration.  _Entering_ the content of the music variable does.  In this
particular case, the result is doubly peculiar since the default
duration at the time calledvariable is defined is 16*2, so you have the
equivalent of { c16*2 d16*2 } which only looks like sixteenth notes but
has the length of eighth notes.

Note that this is different from the pitches of repeat chords (q) and of
isolated note lengths (c2 2 2): as opposed to default durations,
unpitched notes and repeat chords are represented in the music and get
their pitches (and articulations) at the time of "scorification", when
music is encountered in a \score.

The difference has both historic and practical reasons.  Tracing pitches
for repeat chords in the parser was initially attempted but that could
not be made to work reliably in the context of \relative music.  Moving
the pitch substitution to the scorification phase was the sanest manner
of ensuring that all actions of \relative had already been done.

David Kastrup

reply via email to

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