lilypond-user
[Top][All Lists]
Advanced

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

Re: Unicode chars in scheme?


From: Tao Cumplido
Subject: Re: Unicode chars in scheme?
Date: Wed, 24 Jun 2009 16:03:00 +0200

> This is also an option:
> 
> (define (display-unicode x)
>   (display (integer->char x)))
> 
> (display-unicode #xa9)
> 
> (for-each display-unicode
>   (list #x66 #x6f #x6f #x62 #x61 #x72 #xa9))

Thanks. That looks interesting.

Unfortunately I still get errors. There seems to be a problem of the scheme way 
to encode unicode and the lilypond way.
The following gives me errors and no text output:

tf =
#(define-music-function (parser location music) (ly:music?)
   (let* ((es (ly:music-property music 'elements)))
     (ly:music-set-property! (car (cdr es)) 'text
       (string (integer->char #x00a9)))) music)
     
     
<<
        \override Score.TextScript #'font-name = #"JazzChords"
        \tf c'1-"text"
>>

If I replace (string (integer->char #x00a9)) with "©" it works fine.
So, for console output the integer->char conversion works fine but it gives 
errors when applying to Lilypond output.

Actually (display "©") gives the following console output -> ©

If I now change the above to the following:
(string (integer->char #x00c2) (integer->char #x00a9))

i.e. a string composed of the charracters  and ©
This way I get the desired output and just © is displayed in the lilypond 
output.

Any idea why this happens and how to solve it?
-- 
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01




reply via email to

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