Re: Caracters in other languages
- Posted by Derek Parnell <ddparnell at bigpond.com> Jul 08, 2003
- 521 views
On Mon, 7 Jul 2003 18:06:38 -0500 (07/08/03 09:06:38) , <gertie at visionsix.com> wrote: > > > On 8 Jul 2003, at 8:53, Derek Parnell wrote: > >> >> ----- Original Message -----=20 >> From: <rml at rubis.trix.net> >> To: "EUforum" <EUforum at topica.com> >> Sent: Tuesday, July 08, 2003 8:19 AM >> Subject: Caracters in other languages >> >> >> Hi Euforians; >> >> I'm having problems with caracters with an accent in portuguese >> and euphoria. If I use uppercase, they are not changed to uppercase, >> they >> changed into spaces (or no asc caracters.) >> For example: =E9, =E7, =E3, =E1 and so on. >> The same happens when I use getc to read a txt file that cotains these >> caracters. >> My computer is running win2000 in english, with locale in >> brazilian portuguese. >> >> Any suggestion ? >> >> --------- >> Derek replies... >> >> The Euphoria upper() and lower() functions only work for the English >> alphabet and only for ASCII character sets. > > Annoying, isn't it? Mirc does the same. > >> sequence UC,LC >> >> UC =3D repeat(1, 255) >> for i =3D 1 to length(UC) do >> UC[i] =3D i >> end for >> LC =3D UC >> UC['a'] =3D 'A' >> UC['b'] =3D 'B' > > >> . . . >> UC['=E9'] =3D '=C9' >> . . . >> LC['A'] =3D 'a' >> LC['B'] =3D 'b' >> . . . >> LC['=C9'] =3D '=E9' >> . . . >> >> function Upper(object x) >> if integer(x) and x > 0 and x < 256 then >> return UC[x] >> elsif sequence(x) then >> for i =3D 1 to length(x) do >> x[i] =3D Upper(x[i]) >> end for >> end if >> end function >> >> and similar for your Lower function. >> >> These are slower than the Euphoria ones, but a lot more accurate. >> --=20 > > What is "=3D" in all the above, and why the $^& is it there? If Topica > changed some Derek's code to "=3D", what other errors were introduced? > I don't know who or what is changing the characters but the '=c9' and ='e9' are uppercase E-Grave and lowercase E-Grave respectively. -- cheers, Derek Parnell