[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: string concatenation 2.18 vs 2.16
From: |
David Kastrup |
Subject: |
Re: string concatenation 2.18 vs 2.16 |
Date: |
Thu, 16 Jan 2014 16:47:47 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) |
Tom van der Hoeven <address@hidden> writes:
> under 2.16 there were no errors in this
> ----------------
> \version "2.16.2"
> tom = "aap " + "noot"
> \book {
> \header { title = \tom }
> \relative {a b c}
> }
> ----------------
> under 2.18 the expression tom = "aap " + "noot" seems not to be
> allowed
Quite so. It was an undocumented feature (consequently not being used
almost anywhere) leading to problems elsewhere in the parser. For
example,
tom = "aap " + "noot"
\tom
lead to an error message because tom was undefined at the point it was
queried since LilyPond could not finish the assignment without checking
whether "noot" was followed by another + here.
Use
tom = #(string-append "aap " "noot")
or
tom = \markup { "aap" "noot" }
or
tom = \markup \concat { "aap " "noot" }
depending on whether you want to concatenate strings programmatically or
markups.
--
David Kastrup