Umlaut-Fix
Umlaut Probleme sind in R4.0 gelöst.
Achte auf die Spracheinstellung der jeweiligen Seite, sie sollte für Deutsch => de sein, dann klappt's auch mit den Umlauten.
Wird die Sprachdatei /lang/wakka.de.php mit dem Editor kate geöffnet, bearbeitet und gespeichert führt dies zu Umlautproblemen. Änderungen an den Spracheinstellungen sollten deswegen in DeinemTheme/lang/wakka.de.php gespeichert werden. Das Hochladen einer ungeöffneten /lang/wakka.de.php Datei in Dein Webverzeichnis sollte das Problem beheben.
der folgende Text bezieht sich auf ältere Versionen von WackoWiki
Ok, here is a quick fix for the
Umlaut Problem in the German version.
Use the right charset on the Header-Files of your template. Replace the
charset=windows-1251 with
charset=ISO-8859–1
That's it.
If you don't like to change it yourself,
download this, extract the Zip-File and replace the files (they are for the default-Theme).
(updated version)
—
Roland Gruen
Sorry, Roland, but removing
htmlspecialchars leads to XSS bug. It's very dangerous. Try ==<script>alert('hi')</script>==.
Correct setting of charset & locale, depending on your lang settings will be included in R4.
—
Roman Ivanov
Ok, you're right, Roman. I see, that this is a security risk. Now, I tested only with the correct charset, and it works even fine :-) This htmlspecialchar-Thing I tried, before I tried to change the charset.
—
Roland Gruen
Even (or especially?) with the right charset, there is another bug: The german sz – looking like that: ß – is identified as a capital. So every word with an ß in it is build as Link. Any solution?
—
Roland Gruen
You can try to use right locale setting for German (it's placed in beginning of
wakka.php). I think it'll be solution.
—
Roman Ivanov
- Nope, didn't work. I tried setlocale(LC_CTYPE,'de_DE'); and setlocale(LC_CTYPE,'de_DE.ISO8859–1');, both didn't work. :-(
—
Roland Gruen
What ASCII-code has sz? I think that problem in
define("UPPER","[A-Z\xc0-\xdf\xa8]"); and define("UPPERNUM","[0-9A-Z\xc0-\xdf\xa8]");.
—
Roman Ivanov
sz is the unicode-sign no. 223.
—
Roland Gruen
Wacko works with 8bit texts, not Unicode. 223 – it's ASCII code. It matches [\xc0-\xdf] regexp. You need to modify these regexps (UPPER & UPPERNUM). We'll include that in R4 =)
Can you help, btw?
What symbols from
http://ar.sky.ru/ce.html is Upper, and what is lower for german or all central-european languages?
—
Roman Ivanov
I'll try to help:
Upper:
ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝ
Lower:
ßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿ
I don't know:
×÷¸Þ¨þ
The I-don't-know-signs are special symbols, I think, so I know, that
×÷ are mathematic signs, standing vor multiplicate and divide. (hope the signs will by right displayed on your screen, if not, tell me please)
Ok, back to my problem. I don't know much about this programming-thing ;-), so it would be nice, if you could tell me exactly, what I have to change. At the moment, the beginning of my wakka.php looks like this:
Thank you!
—
Roland Gruen
So, for CE-languages, code will be:
—
Roman Ivanov
Hey, it works! Thank you very much! :-)
—
Roland Gruen
Hi. I'm also German but I couldn't get the Umlaute to work entirely.
Changing
charset=windows-1251 to
charset=ISO-8859–1 and changing
setlocale(LC_CTYPE,'ru_RU.CP1251'); to
setlocale(LC_CTYPE,'de_DE'); only allows me to use Umlaute in normal Text and in Links but not in other formatted Text like Headings. Changing
charset=windows-1251 to
charset=UTF-8 allows me to use Umlaute in normal Text and other formatted Text but not in Links.
Do Umlaute work for you in normal Text, formatted Text and in Links Roland???
—
Cub Bi
I don't understand. Did you change defines like shown above?
—
Roman Ivanov
Yes, I did. I changed all charset-definitions (in every PHP file which includes one) and setlocale() and the UPPER-, LOWER- etc. definitions in wakka.php like shown above.
But I can get Umlaute only to work in normal Text and (Links XOR other formatted Text like
bold text).
Links including Umlaute work with
charset=ISO-8859–1.
Other formatted Text including Umlaute works with
charset=UTF-8.
—
Cub Bi
Can you give me any links? To one AND/OR other version?
—
Roman Ivanov
Sorry. Right now I only have one running in the intranet of the company I work for.
But I will install a publicly available one next week. So, for now it seems as I have to live with that fact. It's not such a big problem really as I use now
charset=UTF-8 and it is quite easy to remember that new links don't have to contain Umlaute. And the rest works flawlessly...
—
Cub Bi