RE: How to get cross-staff beaming? Should be automatic; it's not. Why?

2022-07-31 Thread Mark Stephen Mrotek
Kenneth,

The auto beaming can be overridden using   [..]. Look up "manual beaming" 
in the docs.
Stem direction can be changed with \stemUp and \stemDown.
Attached is a start.

Mark

-Original Message-
From: lilypond-user [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] 
On Behalf Of Kenneth Wolcott
Sent: Sunday, July 31, 2022 7:10 PM
To: Lily Pond 
Subject: How to get cross-staff beaming? Should be automatic; it's not. Why?

Hi;

  Making progress on the \change Staff Lilypond feature now.

  However, the current incarnation of my Swan Lake harp part (one bar so far), 
does not have a complete beam (only each triplet has a beam).
I thought that this would be automatic.

  Please see attachments.

Thanks,
Ken Wolcott
\version "2.22.2"

% Swan Lake

global = {
  \language "english"
  \time 4/4
  \key d \major
  \tempo "Moderato"
}

\header {
  title = "Swan Lake"
  composer = "Tchaikovsky"
}

\score {
  \new PianoStaff <<
\new Staff = "upper" {
  \clef treble
  <>
  \change Staff = "lower"
  \tuplet 3/2 { b,8\mf([d b }
  \change Staff = "upper"
  \tuplet 3/2 { \stemDown d'8 fs' b'] }
  \tuplet 3/2 { d''8 [b' fs' }
  \change Staff = "lower"
  \tuplet 3/2 { \stemUp d'8 b fs]) }   | % m01
}
\new Staff = "lower" {
  \clef bass
  s1
}
  >>
}


Re: How to get cross-staff beaming? Should be automatic; it's not. Why?

2022-07-31 Thread Kenneth Wolcott
Thanks Aaron.

  The first suggestion seemed to do absolutely nothing to change the
appearance of the beaming (I'm bewildered), but the second suggestion
worked.

Ken

On Sun, Jul 31, 2022 at 7:45 PM Aaron Hill  wrote:
>
> On 2022-07-31 7:10 pm, Kenneth Wolcott wrote:
> >   However, the current incarnation of my Swan Lake harp part (one bar
> > so far), does not have a complete beam (only each triplet has a beam).
> > I thought that this would be automatic.
>
> In 4/4 time, there is a default beam exception for "twelfth" notes.
>
> 
> \version "2.22.0"
>
> \relative c' {
>\time 2,2 4/4  %% Set desired beat structure and time signature.
>\set Timing.beamExceptions = #'()  %% Clear default exceptions.
>\repeat unfold 4 \tuplet 3/2 { d8 e a }
> }
>
> %% Alternately...
>
> \relative c' {
>\time 2/2
>\repeat unfold 4 \tuplet 3/2 { d8 e a }
> }
> 
>
>
> -- Aaron Hill



Re: How to get cross-staff beaming? Should be automatic; it's not. Why?

2022-07-31 Thread Aaron Hill

On 2022-07-31 7:10 pm, Kenneth Wolcott wrote:

  However, the current incarnation of my Swan Lake harp part (one bar
so far), does not have a complete beam (only each triplet has a beam).
I thought that this would be automatic.


In 4/4 time, there is a default beam exception for "twelfth" notes.


\version "2.22.0"

\relative c' {
  \time 2,2 4/4  %% Set desired beat structure and time signature.
  \set Timing.beamExceptions = #'()  %% Clear default exceptions.
  \repeat unfold 4 \tuplet 3/2 { d8 e a }
}

%% Alternately...

\relative c' {
  \time 2/2
  \repeat unfold 4 \tuplet 3/2 { d8 e a }
}



-- Aaron Hill



Re: Trying to create a two-octave ascending C Major scale using the change Staff example in NR

2022-07-31 Thread Kenneth Wolcott
Maybe I got it now :-)

Thanks to all of you who put up with me 

Ken

On Sun, Jul 31, 2022 at 6:33 PM Kenneth Wolcott
 wrote:
>
> Ah! I created more than one bar of notes, therefore I have to have
> more than one bar of spacer notes. Doh!
>
> On Sun, Jul 31, 2022 at 5:35 PM Kenneth Wolcott
>  wrote:
> >
> > Hi;
> >
> >   Starting a new email thread regarding my difficulty in understanding
> > how to use the Lilypond \change Staff feature...
> >
> > I'm trying to create a two-octave ascending C Major scale using the
> > change Staff example in NR.
> >
> > https://lilypond.org/doc/v2.22/Documentation/notation-big-page.html#changing-staff-manually
> >
> > I'm losing the lower staff. What am I doing wrong?
> >
> > Please see my Lilypond source and the resulting pdf (attached).
> >
> > Thanks,
> > Ken Wolcott


four_octave_scale.ly
Description: Binary data


four_octave_scale.pdf
Description: Adobe PDF document


Re: Trying to create a two-octave ascending C Major scale using the change Staff example in NR

2022-07-31 Thread Kenneth Wolcott
Ah! I created more than one bar of notes, therefore I have to have
more than one bar of spacer notes. Doh!

On Sun, Jul 31, 2022 at 5:35 PM Kenneth Wolcott
 wrote:
>
> Hi;
>
>   Starting a new email thread regarding my difficulty in understanding
> how to use the Lilypond \change Staff feature...
>
> I'm trying to create a two-octave ascending C Major scale using the
> change Staff example in NR.
>
> https://lilypond.org/doc/v2.22/Documentation/notation-big-page.html#changing-staff-manually
>
> I'm losing the lower staff. What am I doing wrong?
>
> Please see my Lilypond source and the resulting pdf (attached).
>
> Thanks,
> Ken Wolcott



Trying to create a two-octave ascending C Major scale using the change Staff example in NR

2022-07-31 Thread Kenneth Wolcott
Hi;

  Starting a new email thread regarding my difficulty in understanding
how to use the Lilypond \change Staff feature...

I'm trying to create a two-octave ascending C Major scale using the
change Staff example in NR.

https://lilypond.org/doc/v2.22/Documentation/notation-big-page.html#changing-staff-manually

I'm losing the lower staff. What am I doing wrong?

Please see my Lilypond source and the resulting pdf (attached).

Thanks,
Ken Wolcott


two_octave_scale.ly
Description: Binary data


two_octave_scale.pdf
Description: Adobe PDF document


Re: Learning how to use "\change Staff"; don't get it yet, obviously

2022-07-31 Thread Kenneth Wolcott
Thank you, Mark.  I will start a new email thread on this topic
starting with a more basic \change Staff query.

On Sat, Jul 30, 2022 at 7:02 PM Mark Stephen Mrotek
 wrote:
>
> Kenneth,
>
> If you want, send your code to me and I shall try to achieve what you want 
> with an explanation.
>
> Mark
>
> -Original Message-
> From: Kenneth Wolcott [mailto:kennethwolc...@gmail.com]
> Sent: Saturday, July 30, 2022 6:45 PM
> To: Mark Stephen Mrotek 
> Cc: Lily Pond 
> Subject: Re: Learning how to use "\change Staff"; don't get it yet, obviously
>
> Hi Mark;
>
>   Thank you for the help.
>
>   I'm still having trouble wrapping my head around this.
>
>   I think that the problem (in general) with my being able to apply examples 
> from the documentation to my engraving attempts is that the example is not 
> large enough (not enough notes, too minimal) to require its own variable to 
> contain the notes, so that gets in the way of the Lilypond feature that I 
> want to use.
>
>   I will try removing the variables and just place the notes for the first 
> measure only to see if I can finally make this work, and generalize it later.
>
> Thanks,
> Ken
>
> On Sat, Jul 30, 2022 at 3:04 PM Mark Stephen Mrotek  
> wrote:
> >
> > Kenneth,
> >
> > Not dense at all.
> > Change staff works within a single voice. You split it between rh and lh. 
> > Might suggest you use "upper" and "lower" for staff designation if you use 
> > rh and lh as variable names.
> >
> > Assuming you start in "lower" with lh.
> > Then
> > \tuplet 3/2 { b,8(d b }
> >   \change Staff = "upper"   %% now continue with what you want in "upper"
> > { d'8 fs' b' } \tuplet 3/2 { d''8 b' fs' }
> >   \change Staff = "lower"   %% and so on.
> >
> > Note: that rh must contain spacers all the while so that the voice can move 
> > back and forth without collisions.
> >
> > Mark
> >
> > -Original Message-
> > From: lilypond-user
> > [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] On Behalf
> > Of Kenneth Wolcott
> > Sent: Saturday, July 30, 2022 2:49 PM
> > To: Lily Pond 
> > Subject: Learning how to use "\change Staff"; don't get it yet,
> > obviously
> >
> > Hi;
> >
> >   I'm learning how to engrave music that changes from one staff to another.
> >
> >   I, obviously, do not understand yet how to do this, even after reading 
> > the pertinent section in the Notation Reference.
> >
> >   My attempt to engrave the first three bars of the harp score of Swan Lake 
> > fails with the following:
> >
> > Swan_Lake.ly:40:3: warning: cannot find context to change to: Staff =
> > RH
> >
> >   \change Staff = "RH"
> > Swan_Lake.ly:22:3: warning: cannot find context to change to: Staff =
> > LH
> >
> >   \change Staff = "LH" <> s4| % m01
> >
> >   I have attached a screenshot of the first three bars of the harp score of 
> > Swan Lake, my LIlypond source code and the result of my engraving attempt.
> >
> >   I don't think that there's anything wrong with Lilypond, and there's 
> > nothing wrong with the documentation, but this Lilypond user is a bit dense.
> >
> >   If I can just get the first bar engraving correctly, I think I can
> > make it the rest of the way :-)
> >
> > Thanks,
> > Ken Wolcott
> >
>



Re: markups and accents inside staff

2022-07-31 Thread David Kastrup
Aaron Hill  writes:

> On 2022-07-31 2:11 pm, Jim Cline wrote:
>>> Can you provide a MWE? (https://lilypond.org/tiny-examples.html)
>>> --
>>> Knute Snortum
>> Sure, here is one.  The vspace is ignored, no matter what value is
>> given.
>> %%%
>> \version "2.20.0"
>> \relative c {
>>   \time 3/4
>>   g'' e' d_\markup{\hspace #-4 \vspace #-7 x}
>> }
>
> I am not certain negative \hspace or \vspace is supported.  For
> \hspace, it probably only works by fluke.

Both are supported just fine.  But a \vspace in an (implicit) \line does
not do a whole lot.  It's essentially a "strut" but it does not affect
the skyline, just dimensions.

-- 
David Kastrup



Re: markups and accents inside staff

2022-07-31 Thread Kieren MacMillan
Hi Jim,

> I guess \vspace is not intended for use within markups?

Well… \vspace is not intended to be used within markups the way you were trying 
to use it.  :)

\markup \column {
  "this"
  \vspace #5
  "works"
}

If you want to move something down, you can use \lower:

  \markup { "this" \lower #12 "is lower" }

Hope that helps!
Kieren.


Re: markups and accents inside staff

2022-07-31 Thread Jim Cline
I am not certain negative \hspace or \vspace is supported.  For \hspace, it 
probably only works by fluke.


Hi Aaron, thanks for those examples!

To clarify, when I said that \vspace is disregarded no matter what the 
value, that includes positive values.  In fact, it is ignored regardless 
of whether \hspace is present.  I guess \vspace is not 
intended for use within markups?  --Jim




Re: markups and accents inside staff

2022-07-31 Thread Aaron Hill

On 2022-07-31 2:11 pm, Jim Cline wrote:

Can you provide a MWE? (https://lilypond.org/tiny-examples.html)

--
Knute Snortum


Sure, here is one.  The vspace is ignored, no matter what value is 
given.


%%%
\version "2.20.0"
\relative c {
  \time 3/4
  g'' e' d_\markup{\hspace #-4 \vspace #-7 x}
}


I am not certain negative \hspace or \vspace is supported.  For \hspace, 
it probably only works by fluke.


Regardless, in order to overlap the staff, you must disable 
outside-staff-priority.  Additionally, you may need to specify negative 
padding.  Consider:



\relative c {
  \time 3/4
  g'' e' d-\tweak outside-staff-priority ##f
  -\tweak X-offset -1.2 -\tweak Y-offset 1
  _\markup \with-color #red \vcenter x
}

\relative c {
  \time 3/4
  g'' e' d-\tweak outside-staff-priority ##f
  -\tweak padding #-5
  _\markup \translate #'(-1.2 . 3.5)
   \with-color #red \vcenter x
}



-- Aaron Hill



Re: markups and accents inside staff

2022-07-31 Thread Jim Cline

Can you provide a MWE? (https://lilypond.org/tiny-examples.html)

--
Knute Snortum


Sure, here is one.  The vspace is ignored, no matter what value is given.

%%%
\version "2.20.0"
\relative c {
  \time 3/4
  g'' e' d_\markup{\hspace #-4 \vspace #-7 x}
}

--Jim



Re: template for a "simple" theory exercise randomizer

2022-07-31 Thread Kieren MacMillan
Hi Aaron,

>> Here is something I threw together quickly... Hope it offers some 
>> inspiration:
> And here is a better and more readable version

Truly incredible and inspiring! Thanks!
I'll get back to you with any questions I have.

All the best,
Kieren.


Re: markups and accents inside staff

2022-07-31 Thread Knute Snortum
On Sun, Jul 31, 2022 at 8:08 AM Jim Cline  wrote:
>
> Hi Knute, thanks, that works.  I am also trying to figure out how to do
> the analogous thing with the placement of a markup text.  Putting the same
> tweaks within the markup does not compile.  Putting
>
> \markup{\hspace #4 \vspace #-2 text}
>
> applies the hspace but ignores the vspace.  --Jim

Can you provide a MWE? (https://lilypond.org/tiny-examples.html)

--
Knute Snortum



Re: template for a "simple" theory exercise randomizer

2022-07-31 Thread Aaron Hill

On 2022-07-31 12:48 pm, Aaron Hill wrote:

On 2022-07-31 12:00 pm, Kieren MacMillan wrote:

Thanks for any help you can give!


Here is something I threw together quickly... Hope it offers some 
inspiration:


And here is a better and more readable version:

(Why I had all those unnecessary Scheme<->LilyPond escapes is beyond 
me...)



\version "2.22.0"

createExercise =
#(define-scheme-function
  (clef key root)
  (symbol? ly:pitch? ly:pitch?)
  #{ \markup \score {
\layout { indent = 0 }
\new Staff {
  \omit Score.TimeSignature
  \clef #(symbol->string clef)
  \key $key \major $root 1 \bar "||"
}
  } #})

randomElement =
#(define-scheme-function
  (list-of-elements) (list?)
  (list-ref list-of-elements
   (random (length list-of-elements

scaleDegreesFor =
#(define-scheme-function
  (key) (ly:pitch?)
  (music-pitches (ly:music-transpose
   #{ { c' d' e' f' g' a' } #} key)))

clefKeys.treble = { bes b c' des' d' ees' e' f' fis' g' aes' a' }
clefKeys.bass = { f, fis, g, aes, a, bes, b, c des d ees e }

\markup \wordwrap {
  #@(map (lambda _
   (let* ((clefKey (randomElement clefKeys))
  (clef (car clefKey))
  (keys (music-pitches (cdr clefKey)))
  (key (randomElement keys))
  (scaleDegrees (scaleDegreesFor key))
  (root (randomElement scaleDegrees)))
(createExercise clef key root))
  ) (iota 24))
}


-- Aaron Hill

Byzantine singing

2022-07-31 Thread Лысов Дмитрий
Hi! I am studying Byzantine singing, which uses neumes to record melodies. Have you ever met a player or a converter of this notation into a five-line one in the lilypond program? Are there any developments on this topic at all?Например посмотрите книгу по византийскому пению:Langue N. "A guide to the music of the eastern orthodox church", 1984.https://www.newbyz.org/guide_to_music_of_eoa.pdf



Re: template for a "simple" theory exercise randomizer

2022-07-31 Thread Aaron Hill

On 2022-07-31 12:00 pm, Kieren MacMillan wrote:

Thanks for any help you can give!


Here is something I threw together quickly... Hope it offers some 
inspiration:



\version "2.22.0"

createExercise =
#(define-scheme-function
  (clef key root)
  (symbol? ly:pitch? ly:pitch?)
  #{
\markup \score {
  \new Staff {
\omit Score.TimeSignature
\clef #(symbol->string clef)
\key $key \major
$root 1
\bar "||"
  }
}
  #})

randomElement =
#(define-scheme-function
  (list-of-elements) (list?)
  (list-ref list-of-elements
(random (length list-of-elements

clefs = treble,bass

keys = #(music-pitches #{
  c des d ees e f fis g aes a bes b
#})

scaleDegreesFor =
#(define-scheme-function
  (key) (ly:pitch?)
  (music-pitches (ly:music-transpose
#{ { c d e f g a } #} key)))

\markup \wordwrap { #@(map
 (lambda args
  (let*
((clef #{ \randomElement \clefs #})
 (key #{ \randomElement \keys #})
 (root #{ \randomElement \scaleDegreesFor #key #}))
   (if (eq? clef 'treble)
   (set! root (ly:pitch-transpose root #{ c'' #})))
#{ \createExercise #clef #key #root #}))
 (iota 24))
}


NOTE: I omitted scale degree seven intentionally to focus only on major 
or minor triads.



-- Aaron Hill

template for a "simple" theory exercise randomizer

2022-07-31 Thread Kieren MacMillan
Hi all!

I'm hoping someone can whip up a “simple” example of an exercise randomizer, 
built in Scheme, for music theory. Let's say I want to generate something like 
this:


I would love to be able to have a function do this, with parameters for:
   — how many examples to generate
   — which clefs to choose from
   — which key signatures to choose from
   — the range of possible notes (maybe even per-clef?)

I've got lots of other use cases for such a randomizer, but I think a single 
example will get me going in the correct direction. (There are a couple of very 
complex examples out there, but they’re daunting for me to reverse-engineer!)

Thanks for any help you can give!
Kieren.

Re: Non-printing notes

2022-07-31 Thread Jacques Menu
Hello Hans,

> Le 31 juil. 2022 à 16:22, Hans Aikema  a écrit :
> 
> Loking at the spec 
> https://w3c.github.io/musicxml/musicxml-reference/elements/note/
> 
> I would say the proper behaviour is that the entire note, including the stem, 
> is hidden for these cases (but taken into account for spacing), not just the 
> notehead

That’s the ambiguity I’ve bumped into, and you’re probably right. Thanks!

JM

> 
> 
> print-dot 
> Controls the printing of an augmentation dot separately from the rest of the 
> note or rest. This is especially useful for notes that overlap in different 
> voices, or for chord sheets that contain lyrics and chords but no melody. If 
> print-object is set to no, this attribute is also interpreted as being set to 
> no if not present.
> 
> print-leger
> Indicates whether leger lines are printed. Notes without leger lines are used 
> to indicate indeterminate high and low notes. It is yes if not present unless 
> print-object is set to no. This attribute is ignored for rests.
> print-lyric   yes-no  No  Controls the printing of a lyric separately 
> from the rest of the note or rest. This is especially useful for notes that 
> overlap in different voices, or for chord sheets that contain lyrics and 
> chords but no melody. If print-object is set to no, this attribute is also 
> interpreted as being set to no if not present.
> 
> print-object
> Specifies whether or not to print an object. It is yes if not specified.
> 
> print-spacing
> Controls whether or not spacing is left for an invisible note or object. It 
> is used only if no note, dot, or lyric is being printed. The value is yes 
> (leave spacing) if not specified.
> 
> 
> 




Re: markups and accents inside staff

2022-07-31 Thread David Kastrup
Jim Cline  writes:

>> You can always write something like
>>
>> %%%
>> \version "2.20.0"
>> \relative c {
>>  \time 3/4
>>  \mergeDifferentlyDottedOn
>>  <<{4\arpeggio e' d}\\{ g,8._\tweak extra-offset #'(0.5 . 3)  -> 
>> dis16 a2}>>|
>> }
>>
>> but frankly, it quite evades me why you would consider this desirable
>> over the default output.
>
> In the present example, the accent being so far away from the note leaves 
> the performer in doubt about whether it applies to the inside voice rather 
> than the whole chord, so I was trying to make that more clear. 
> thanks--jim

The solution to that, of course, is to just refrain from merging the
note heads.

-- 
David Kastrup



Re: markups and accents inside staff

2022-07-31 Thread Jim Cline

You can always write something like

%%%
\version "2.20.0"
\relative c {
 \time 3/4
 \mergeDifferentlyDottedOn
 <<{4\arpeggio e' d}\\{ g,8._\tweak extra-offset #'(0.5 . 3)  -> dis16 
a2}>>|
}

but frankly, it quite evades me why you would consider this desirable
over the default output.


In the present example, the accent being so far away from the note leaves 
the performer in doubt about whether it applies to the inside voice rather 
than the whole chord, so I was trying to make that more clear. 
thanks--jim




Re: markups and accents inside staff

2022-07-31 Thread Jim Cline
Hi Knute, thanks, that works.  I am also trying to figure out how to do 
the analogous thing with the placement of a markup text.  Putting the same 
tweaks within the markup does not compile.  Putting


\markup{\hspace #4 \vspace #-2 text}

applies the hspace but ignores the vspace.  --Jim


I believe you can do what you want by setting the
outside-staff-priority to ##f and then using Y-offset to move the
accent.

%%%
\version "2.20.0"

\relative c {
  \time 3/4
  \mergeDifferentlyDottedOn
  <<
{ 4\arpeggio e' d }
\\
{ g,8.
  -\tweak outside-staff-priority ##f
  -\tweak Y-offset -3
  _> dis16 a2
}
  >> |
}
%%%

--
Knute Snortum





Re: markups and accents inside staff

2022-07-31 Thread Knute Snortum
On Sun, Jul 31, 2022 at 7:01 AM Jim Cline  wrote:
>
> Apologies in advance; this seems like it must be simple, but I cannot find
> the answer.  I would like to be able to move an accent closer to the note
> head, possibly using markup since it would also be nice to know how to get
> markups to print over the staff lines.  Here is an example:
>
> %%%
> \version "2.20.0"
> \relative c {
>\time 3/4
>\mergeDifferentlyDottedOn
><<{4\arpeggio e' d}\\{ g,8._> dis16 a2}>>|
> }
>
> The accent prints below the beam, and I would like it higher, closer to
> the note head, even if there is some collision with the stem or the staff.
> But \vspace in markup does not allow me to do it.  --Jim

I believe you can do what you want by setting the
outside-staff-priority to ##f and then using Y-offset to move the
accent.

%%%
\version "2.20.0"

\relative c {
   \time 3/4
   \mergeDifferentlyDottedOn
   <<
 { 4\arpeggio e' d }
 \\
 { g,8.
   -\tweak outside-staff-priority ##f
   -\tweak Y-offset -3
   _> dis16 a2
 }
   >> |
}
%%%

--
Knute Snortum



Re: markups and accents inside staff

2022-07-31 Thread David Kastrup
Jim Cline  writes:

> Apologies in advance; this seems like it must be simple, but I cannot
> find the answer.  I would like to be able to move an accent closer to
> the note head, possibly using markup since it would also be nice to
> know how to get markups to print over the staff lines.  Here is an
> example:
>
> %%%
> \version "2.20.0"
> \relative c {
>   \time 3/4
>   \mergeDifferentlyDottedOn
>   <<{4\arpeggio e' d}\\{ g,8._> dis16 a2}>>|
> }
>
> The accent prints below the beam, and I would like it higher, closer
> to the note head, even if there is some collision with the stem or the
> staff.
> But \vspace in markup does not allow me to do it.  --Jim

You can always write something like

%%%
\version "2.20.0"
\relative c {
  \time 3/4
  \mergeDifferentlyDottedOn
  <<{4\arpeggio e' d}\\{ g,8._\tweak extra-offset #'(0.5 . 3)  -> 
dis16 a2}>>|
}

but frankly, it quite evades me why you would consider this desirable
over the default output.

-- 
David Kastrup



Re: Non-printing notes

2022-07-31 Thread Hans Aikema



> On 31 Jul 2022, at 15:16, Jacques Menu  wrote:
> 
> Hello Timothy,
> 
> Thanks for the info. This version of Finale is old, and it does print the 
> note heads, ignoring the print-object attribute.
> 
> I’ll complement xml2ly to hide the note head in this case.
> 
> A nice day!
> 
> JM
> 
>> Le 31 juil. 2022 à 00:06, Timothy Lanfear  a écrit :
>> 
>> On 30/07/2022 17:18, Jacques Menu wrote:
>>> Hello folks,
>>> 
>>> MusicXML has the 'print-object' attribute to notes, among other markups:
>>> 
>>> 
>>> 
>>> D
>>> 3
>>> 
>>> 768
>>> 6
>>> quarter
>>> down
>>> 2
>>> 
>>> 
>>> This value ‘no’ is ignored by MuseScore and musicxml2ly, and Finale 2014b 
>>> displays such notes in light gray this way, like the Ds and Gs below:
>>> 
>>> 
>>> 
>>> What is the intended meaning, and how should this be displayed using 
>>> LilyPond?
>>> 
>>> Thanks for your help!
>>> 
>>> JM
>>> 
>> MuseScore 3.2.3 also displays the note head in gray, but the stem normally. 
>> When converting the file to PDF or printing, the note head is omitted and 
>> the stem is printed. This behaviour is equivalent to LilyPond's \hide 
>> NoteHead.
>> 
>> -- 
>> Timothy Lanfear, Bristol, UK.
>> 
> 

Loking at the spec 
https://w3c.github.io/musicxml/musicxml-reference/elements/note/

I would say the proper behaviour is that the entire note, including the stem, 
is hidden for these cases (but taken into account for spacing), not just the 
notehead


print-dot   
Controls the printing of an augmentation dot separately from the rest of the 
note or rest. This is especially useful for notes that overlap in different 
voices, or for chord sheets that contain lyrics and chords but no melody. If 
print-object is set to no, this attribute is also interpreted as being set to 
no if not present.

print-leger
Indicates whether leger lines are printed. Notes without leger lines are used 
to indicate indeterminate high and low notes. It is yes if not present unless 
print-object is set to no. This attribute is ignored for rests.
print-lyric yes-no  No  Controls the printing of a lyric separately 
from the rest of the note or rest. This is especially useful for notes that 
overlap in different voices, or for chord sheets that contain lyrics and chords 
but no melody. If print-object is set to no, this attribute is also interpreted 
as being set to no if not present.

print-object
Specifies whether or not to print an object. It is yes if not specified.

print-spacing
Controls whether or not spacing is left for an invisible note or object. It is 
used only if no note, dot, or lyric is being printed. The value is yes (leave 
spacing) if not specified.






markups and accents inside staff

2022-07-31 Thread Jim Cline
Apologies in advance; this seems like it must be simple, but I cannot find 
the answer.  I would like to be able to move an accent closer to the note 
head, possibly using markup since it would also be nice to know how to get 
markups to print over the staff lines.  Here is an example:


%%%
\version "2.20.0"
\relative c {
  \time 3/4
  \mergeDifferentlyDottedOn
  <<{4\arpeggio e' d}\\{ g,8._> dis16 a2}>>|
}

The accent prints below the beam, and I would like it higher, closer to 
the note head, even if there is some collision with the stem or the staff.

But \vspace in markup does not allow me to do it.  --Jim




Re: Non-printing notes

2022-07-31 Thread Jacques Menu
Hello Timothy,

Thanks for the info. This version of Finale is old, and it does print the note 
heads, ignoring the print-object attribute.

I’ll complement xml2ly to hide the note head in this case.

A nice day!

JM

> Le 31 juil. 2022 à 00:06, Timothy Lanfear  a écrit :
> 
> On 30/07/2022 17:18, Jacques Menu wrote:
>> Hello folks,
>> 
>> MusicXML has the 'print-object' attribute to notes, among other markups:
>> 
>>  
>>  
>>  D
>>  3
>>  
>>  768
>>  6
>>  quarter
>>  down
>>  2
>>  
>> 
>> This value ‘no’ is ignored by MuseScore and musicxml2ly, and Finale 2014b 
>> displays such notes in light gray this way, like the Ds and Gs below:
>> 
>> 
>> 
>> What is the intended meaning, and how should this be displayed using 
>> LilyPond?
>> 
>> Thanks for your help!
>> 
>> JM
>> 
> MuseScore 3.2.3 also displays the note head in gray, but the stem normally. 
> When converting the file to PDF or printing, the note head is omitted and the 
> stem is printed. This behaviour is equivalent to LilyPond's \hide NoteHead.
> 
> -- 
> Timothy Lanfear, Bristol, UK.



Re: hspace in markup cancels other directives

2022-07-31 Thread Jim Cline
As a programmer in other languages, I like to think of arguments being 
enclosed in some kind of brackets, like a function f(x,y(z)).  That's why 
I alway enclose what I'm marking up within {}; what's inside are the 
arguments of the markup.  Using your explanation then it looks like


 bes^\markup{\hspace #-3 \smaller{\with-color #blue {text}}}

That helps me understand, thanks.



On Sun, 31 Jul 2022, Werner LEMBERG wrote:




Hi Aaron, thanks for that.  I thought I had tried all permutations
of the order of specifications but I missed that one.  It's hard to
guess which one is correct.


Is it?  I don't think so.  Just bear in mind whether you have used up
all arguments of a markup command.  In your case,

  \smaller   expects one argument
  \with-color #blue  expects one more argument, thus not finished yet
  \hspace #-3no more argument is expected, thus the chain of
 commands stops here: `\smaller \with-color
 #blue` gets applied to `\hspace #-3`, which
 doesn't make sense, of course
  text   gets typeset as-is, since the previous commands
 are already applied


Werner





Re: hspace in markup cancels other directives

2022-07-31 Thread David Kastrup
Jim Cline  writes:

> Hi Aaron, thanks for that.  I thought I had tried all permutations of
> the order of specifications but I missed that one.  It's hard to guess
> which one is correct.--Jim

It's not a matter of order or permutations.  Things like \with-color
#red are not complete without the immediately following item, just like
"immediately following" is not complete without "item" in this sentence.

If you write

\markup { text \with-color #red }

you'll get an error, not because of "ordering" but because \with-color
#red is an incomplete construct.

-- 
David Kastrup



Re: hspace in markup cancels other directives

2022-07-31 Thread Werner LEMBERG


> Hi Aaron, thanks for that.  I thought I had tried all permutations
> of the order of specifications but I missed that one.  It's hard to
> guess which one is correct.

Is it?  I don't think so.  Just bear in mind whether you have used up
all arguments of a markup command.  In your case,

   \smaller   expects one argument
   \with-color #blue  expects one more argument, thus not finished yet
   \hspace #-3no more argument is expected, thus the chain of
  commands stops here: `\smaller \with-color
  #blue` gets applied to `\hspace #-3`, which
  doesn't make sense, of course
   text   gets typeset as-is, since the previous commands
  are already applied


 Werner



Re: hspace in markup cancels other directives

2022-07-31 Thread Jim Cline
Hi Aaron, thanks for that.  I thought I had tried all permutations of the 
order of specifications but I missed that one.  It's hard to guess which 
one is correct.--Jim



What you have effectively done is this:

 \markup {
   \smaller { \with-color #blue { \hspace #-3 } }
   text
 }

You could explicitly group the space and text:

 \markup \smaller \with-color #blue { \hspace #-3 text }

Alternately, move the space outside the other commands:

 \markup { \hspace #-3 \smaller \with-color #blue text }