--------
I try to do conditional lilypond runs. I can do that by having different 
files which includes the common parts, but I'd like to have just one
source file and specify which version to use (in my case, mostly different
page sizes). So I'm trying out the #(if (defined ..)) construct.

1, what is the rationale for "lilypond -d xx" to be restricted to just 
   a certain list of variables?

2, what is "lilypond -e '...' meant to be used for?

+++++++++++
  I have:

$ cat test.ly
\version "2.13.0"

%#(define flag #t)
#(if (defined? 'flag)
  (display "\n\tYes!\n")
  (display "\n\tNo!\n")
)
$

  Running this gives me:

$ lilypond test.ly
GNU LilyPond 2.13.0
Processing `test.ly'
Parsing...
        No!
$

  Uncommenting the (define..) line gives me:

$ lilypond test.ly
GNU LilyPond 2.13.0
Processing `test.ly'
Parsing...
        Yes!

$

  So far so good. Now back to the commented %#(define...).
  Trying the "obvious" thing:

$ lilypond -d flag test.ly
GNU LilyPond 2.13.0
warning: no such internal option: flag
...
$

  since -d is restricted to internal options, and

$ lilypond -e '(define flag #t)' test.ly
GNU LilyPond 2.13.0
Processing `test.ly'
Parsing...
        No!

$

  does not work either.

Regards,
/Karl

-----------------------------------------------------------------------
Karl Hammar                    Aspö Data               [email protected]
Lilla Aspö 148                                                 Networks
S-742 94 Östhammar          +46  173 140 57                   Computers
Sweden                     +46  70 511 97 84                 Consulting
-----------------------------------------------------------------------




_______________________________________________
lilypond-user mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to