lilypond-user
[Top][All Lists]
Advanced

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

Re: "Creating MIDI Files" doc is wrong


From: James Harkins
Subject: Re: "Creating MIDI Files" doc is wrong
Date: Sun, 15 Oct 2017 21:32:24 +0800
User-agent: Zoho Mail

---- On Sun, 15 Oct 2017 18:32:29 +0800 David Kastrup <address@hidden> wrote 
---- 
> > Never mind, I see my mistake now. I had extrapolated from \new Staff 
> > and \new Voice to \new Score. LilyPond accepts \new Score 
> > (!). Possible improvement might be to reject that wrong syntax with an 
> > informative error. 
>  
> It isn't wrong syntax.  And there is no way to "extrapolate" since 
> \new Staff or \new Voice don't introduce different syntax from 
> \new Score and there is no \staff or \voice either. 

Wrong choice of word, perhaps... I had been writing a lot of "\new Staff" and 
"\new Voice," and I (incorrectly) extended that pattern up to score level.

It may be valid syntax, but I couldn't find what it's used for, anyway.

> > - Do I just write a number here, or prepend '#' -- 1.0 or #1.0? 
>  
> Prepending works reliably almost anywhere, not prepending works in most 
> places except markup as well.

"... almost anywhere..." ;)

> > - Single or double # for other entities? (#t vs ##t) 
>  
> #t and #f are Scheme expressions (not particularly pretty ones in my 
> book), and if you want to use them from LilyPond, you need to prepend # 
> or $.  Like with _everything_ you use from Scheme inside of LilyPond. 

A-ha. OK, the trouble is that I don't really understand the boundaries between 
LilyPond and Scheme. I'm far enough along to see how music expressions fit 
together in voices and staves (more or less), but for overrides, I can copy and 
edit some commands from the manuals but I don't *really* know what they're made 
of at a deep level.

It helps to know that # means "something from Scheme" and #t and #f are Scheme 
things, and so is 1.0, hence ##f and #1.0, but not ##1.0. Five years of 
intermittent use, and I didn't get it (maybe I still don't)... it may not be 
possible to improve, but it falls a bit short of being self-explanatory ;)

In any case, clearer now, thanks for the explanation.

hjh




reply via email to

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