lilypond-user
[Top][All Lists]
Advanced

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

Re: Book and variables -- lost how to remedy


From: Bernhard Kleine
Subject: Re: Book and variables -- lost how to remedy
Date: Fri, 11 Nov 2016 19:41:21 +0100
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0

I added this to testmain.ly before the \book
 parserDefine =
#(define-void-function (name val)(symbol? not-null?)
    (ly:parser-define! name val))
and got this error:

F:/Meine Noten/EigeneNoten/WeihnachtsLieder/testmain.ly:17:2: error: GUILE signaled an error for the _expression_ beginning here

#

(define-void-function (name val)(symbol? not-null?)


Maybe some other requirement is missing.

Bernhard

Am 11.11.2016 um 18:43 schrieb Jan-Peter Voigt:
Hello

there's one solution, I use in this cases:

parserDefine =
#(define-void-function (name val)(symbol? not-null?)
    (ly:parser-define! name val))

as parserDefine is a void function, you can all it anywhere - even inside a music _expression_:

\parserDefine global { ... }

instead of

global = { ... }

Of course, you might use a shorter name like just 'def' instead of parserDefine. But take care not to use a reserved name like 'define'.

HTH
Jan-Peter

Am 11.11.2016 um 17:15 schrieb Federico Bruni:
Il giorno ven 11 nov 2016 alle 16:45, Bernhard Kleine <address@hidden> ha scritto:
However when the global variable to the top of 2test.ly, the file could be compiled. I tried then the same on my full piece and I failed while parsing with
F:/Meine Noten/EigeneNoten/WeihnachtsLieder/2test.ly:2:1: error: syntax error, unexpected STRING
global = {

To make this evident I include the files once more. I do not understand this.

I hit the same wall some time ago :)

If you read the first error message:

/tmp/2test.ly:2:1: error: syntax error, unexpected STRING

it points to the definition of global in the included file.

The problem here is that the variable is included (and evaluated) within a \bookpart block, but variables can be defined only at top level.
That's why you need an extra file only for variables (the use of .ily extension is only a useful convention, as Urs already wrote).

I don't think that there's another way to achieve what you want.




_______________________________________________
lilypond-user mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user


_______________________________________________
lilypond-user mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user

-- 
spitzhalde9
D-79853 lenzkirch
address@hidden
www.b-kleine.com, www.urseetal.net
-
thunderbird mit enigmail
GPG schlüssel: D5257409
fingerprint:
08 B7 F8 70 22 7A FC C1 15 49 CA A6 C7 6F A0 2E D5 25 74 09

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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