Hallo Leute,
Ich weiss nicht ob das Problem schon anderweitig gelöst wurde, aber in Zusammenhang mit Umlauten habe ich hier auf der Liste immer mehr Fragen als Antworten gelesen. Hier also mal eine Antwort: Kontext: In dem vorbereiteten Demo-Image von > http://swiki.squeakfoundation.org/squeak-ev/84 > http://www.ira.uka.de/~marcus/SqueakDeutsch.zip Ist die Eingabe von Umlauten 'gestört'. Das liegt m.E. daran, das auf detuschen OS/VM-Kombinationen meistens keine multi-character-keycodes für die Umlaute erzeugt werden un Yoshiki diese Möglichkeit nicht ausreichen berücksichtigt hat. Lösung: Ein 'dirty hack' der für mich unter Linux ganz gut klappt, ist in der Methode HandMorph>>generateKeyboardEvent: An dem letzten umfassenden ifTrue: Block noch ein ifFalse mit folgendem Inhalt anzuhängen: keyValue _ keyValue asCharacter squeakToIso asciiValue. Das ist so ähnlich auch das was Yoshiki im Fall mit multi... macht. Changeset ist angehängt. Ein weiteres Problem ist, dass Umlaute in allen anderen als den default... Zeichensätzen nicht korrekt angezeigt werden. Wenn man sich solch einen String dann aber greift und (z.B. in einem Inspector) anzeigt, erkennt man, dass Squeak sich durchaus im klaren ist, dass da ein Umlaut kommen soll. Hier hilft es wohl nur, für die fehlerhaften Zeichensätze die Glyph-Tabelle zu reparieren. BTW ich habe das Gefühl, dass es einen Unterschied macht, ob die Zeichensätze Default... heissen. Ich meine ich hatte mal einen Fall, da war das Zeichen korrekt angezeigt, aber der printString vom Zeichensatz war genau der gleiche, wie bei einem anderen, nicht korrekt angezeigten, der wohl unter seinem spezifischen Namen referenziert wurde (wie NewYork10 12 oder so). HTH, Torge P.S.: Gute Arbeit! P.P.S: Habe auch noch zwei kleine Korrekturvorschläge für addGermanVocabulary angehängt. Zum Wiederfinden am besten diffen. -- Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/ ![]() ![]() |
Hallo nochmal.
Ich habe hier ein höchst nützliches DoIt für alle, die das zweite unten beschriebene Problem haben und gerne korrekte Umlaute angezeigt bekommen wollen. Dies funkioniert soweit ich sehen kann für alle NewYork und Atlanta fonts sowie für die nicht-MS (nicht TTF-) Comic Fonts. Ich weiss allerdings nicht ob es vernünftiger wäre, anstatt der lebenden Instancen eine Änderung im Code anzugehen. Soweit ich feststellen konnte, werden die Instanzen aber nicht 'im normalen Betrieb' erzeugt und es reicht sie einmal zu ändern. Hier das DoIt: | map | StrikeFont allInstances do:[:each| map _ each instVarAt: (each class instVarNames indexOf: 'characterToGlyphMap'). map ifNotNil:[ (each name beginsWith: 'NewYork') ifTrue:[ map at: ($ asciiValue + 1) put: ($ asciiValue). map at: ($ asciiValue + 1) put: ($ asciiValue). map at: ($ asciiValue + 1) put: ($ asciiValue). map at: ($ asciiValue + 1) put: ($ asciiValue)]. ((each name beginsWith: 'Comic') or:[each name beginsWith: 'Atlanta'] ) ifTrue:[ map at: ($ asciiValue + 1) put: 16r80. map at: ($÷ asciiValue + 1) put: 16r85. map at: ($ asciiValue + 1) put: 16r86. map at: ($ asciiValue + 1) put: 16r8A. map at: ($ asciiValue + 1) put: 16r9A. map at: ($ asciiValue + 1) put: 16r9F]]]. Des weiteren glaube ich, dass man bei den TTF Fonts auch was machen könnte. Hier empfiehlt es sich aber definitiv, bei der Erzeugung (also dem Import) anzusetzen. Leider habe ich keine Erfahrungen mit dem FontReader und weiss auch nicht ob ich ihn jetzt unter Linux zum Laufen bringen kann. Ich bin aber der Überzeugung, dass die Änderung in TTFontReader>>processCharMap: passieren sollte. Hier wird noch angenommen, dass das Squeak-Imge auf MacRoman basier, was so ja wohl nich mehr stimmt. Also müsste hier die Fallunterscheidung dahingehend modifiziert werden, das genau im anderen Fall eine Umwandlung (in genau die andere Richtung) passiert. In etwa so: TTFontReader>>processCharMap: assoc "Process the given character map" | charTable glyph cmap | cmap _ assoc value. charTable _ Array new: 256 withAll: glyphs first. "Initialize with default glyph" assoc key = 1 ifTrue: "Mac encoded table" [1 to: (cmap size min: charTable size) do: [:i | glyph _ glyphs at: (cmap at: i) + 1. charTable at: (self macToWin: i) put: glyph]]. assoc key = 3 ifTrue: "Win encoded table" [1 to: (cmap size min: charTable size) do: [:i | glyph _ glyphs at: (cmap at: i) + 1. charTable at: i put: glyph]]. mit TTFontReader>>macToWin: anInteger "analog zu winToMac:" ^ (index - 1) asCharacter squeakToIso asciiValue + 1 ^ charTable HTH, Torge On Fri, 27 Jun 2003 11:02:41 +0200, Torge Husfeldt <[hidden email]> wrote: > Hallo Leute, > > Ich weiss nicht ob das Problem schon anderweitig gelöst wurde, > aber in Zusammenhang mit Umlauten habe ich hier auf der Liste > immer mehr Fragen als Antworten gelesen. > Hier also mal eine Antwort: > Kontext: > In dem vorbereiteten Demo-Image von >> http://swiki.squeakfoundation.org/squeak-ev/84 >> http://www.ira.uka.de/~marcus/SqueakDeutsch.zip > Ist die Eingabe von Umlauten 'gestört'. > Das liegt m.E. daran, das auf detuschen OS/VM-Kombinationen > meistens keine multi-character-keycodes für die Umlaute erzeugt > werden un Yoshiki diese Möglichkeit nicht ausreichen berücksichtigt hat. > Lösung: > Ein 'dirty hack' der für mich unter Linux ganz gut klappt, ist in der > Methode > HandMorph>>generateKeyboardEvent: > An dem letzten umfassenden ifTrue: Block noch ein ifFalse mit folgendem > Inhalt anzuhängen: > keyValue _ keyValue asCharacter squeakToIso asciiValue. > Das ist so ähnlich auch das was Yoshiki im Fall mit multi... macht. > Changeset ist angehängt. > Ein weiteres Problem ist, dass Umlaute in allen anderen als den > default... > Zeichensätzen nicht korrekt angezeigt werden. Wenn man sich solch einen > String dann aber greift und (z.B. in einem Inspector) anzeigt, erkennt > man, > dass Squeak sich durchaus im klaren ist, dass da ein Umlaut kommen soll. > Hier hilft es wohl nur, für die fehlerhaften Zeichensätze die Glyph- > Tabelle > zu reparieren. BTW ich habe das Gefühl, dass es einen Unterschied macht, > ob die Zeichensätze Default... heissen. Ich meine ich hatte mal einen > Fall, > da war das Zeichen korrekt angezeigt, aber der printString vom > Zeichensatz > war genau der gleiche, wie bei einem anderen, nicht korrekt angezeigten, > der > wohl unter seinem spezifischen Namen referenziert wurde (wie NewYork10 12 > oder so). > > HTH, > Torge > > P.S.: Gute Arbeit! > P.P.S: Habe auch noch zwei kleine Korrekturvorschläge für > addGermanVocabulary angehängt. > Zum Wiederfinden am besten diffen. > -- Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/ |
Hallo Torge,
Das hört sich doch gut an. Ich werde beide Umlaut-patches bei nächster Gelegenheit ausprobieren. Leider bin ich im Moment entweder zu müde, oder ich habe keine Zeit. Die beiden Verbesserungen in addGermanVocabulary habe ich allerdings nicht finden können, bei mir markiert diff gleich alles. Vielleicht kannst Du sie mir bitte noch mal händisch schicken. Wie sollen wir überhaupt die Änderungsverwaltung organisieren? Jeder schickt mir seine Vorschläge, und ich entscheide diktatorisch über das einpflegen? Liebe Grüße Esther |
Hallo Torge, hallo Squeaker,
SUPER! Beide Patches tun ganz super. Damit sieht Squeak auf Deutsch schon richtig gut aus.Bei der Darstellung der Umlaute hat sich das DoIt zwar irgendwie auch unterwegs mit den Zeichen verheddert, aber mit ein bißchen Phantasie habe ich das hinbiegen können. eingabe der Umlaut klappte sofort, ich bin beeindruckt! Ich schicke mal ein Bildschirmphoto, wie das DoIt jetzt bei mir aussieht. Dann muss das jeder halt von Hand abschreiben, aber die Zeichen sollten lesbar sein. Es fehlt nur das "ß" in den Comic- und Atlanta-Schriften (Hilfeblasen) Damit hat Torge Punkt 4 und 1a der TO-DO-Liste (s. meine Mail vom 17.06.) erledigt!!!! Punkt 1b (falscher Zeilenumbruch) kann jeder selbst abhaken, in dem man das addGermanvocabulary.st nach dem Runterladen noch mal prüft, ob die Zeilenenden wirklich im Mac-Format sind. Bei mir tut es dann, erkennbar daran, dass alle Hilfeblasen bei Geräten und Lager auf Deutsch sind, außer für "Zufall" und "Object-Katalog". 3 (Menü auf Japanisch) scheint nur im 3.4-Image ein Problem zu sein. Bleiben noch 2 (unmatched string quotes), 5, 6 und 7. Viele Grüße von einer ziemlich begeisterten Esther |
Hallo Esther,
Ich habe alle Patches inclusive des DoIt mal in einem .cs zusammengefasst. Leider tut dies ein wenig viel, denn es würde (soweit vorhanden) alle TT- Schriftarten in Comic verwandeln. In dem heruntergeladenen Image von marcus ist das aber OK, denn die einzige geladene TT-Discription ist Comic(Default). Das mit den eszet ist mir auch aufgefallen. Habe ich mit drin. Ich suche schnell nochmal Deinem mail vom 17. 'raus und versuche weiter Punkte abzuhaken. Als nächstes schreibe ich das cs so um, dass es Schriftfamilien erkennt und den Austausch richtig vornimmt. Ich habe die vorläufige version mal angehängt. Gruss, Torge P.S.: Beim Abarbeiten des postscipts muss der Benutzer einmal einen Pfadnamen für eine TTF-Datei (vorzugsweise Comic) eingeben. Wer diese (z.B. auf einem Linux- System) nicht hat, sollte die letzten drei Anweisungen aus dem postscript herauseditieren. On Sun, 29 Jun 2003 16:20:34 +0200, Esther Mietzsch <[hidden email]> wrote: > Hallo Torge, hallo Squeaker, > > SUPER! > Beide Patches tun ganz super. Damit sieht Squeak auf Deutsch schon > richtig gut aus.Bei der Darstellung der Umlaute hat sich das DoIt zwar > irgendwie auch unterwegs mit den Zeichen verheddert, aber mit ein bißchen > Phantasie habe ich das hinbiegen können. eingabe der Umlaut klappte > sofort, ich bin beeindruckt! > Ich schicke mal ein Bildschirmphoto, wie das DoIt jetzt bei mir aussieht. > Dann muss das jeder halt von Hand abschreiben, aber die Zeichen sollten > lesbar sein. Es fehlt nur das "ß" in den Comic-und Atlanta-Schriften > (Hilfeblasen) > Damit hat Torge Punkt 4 und 1a der TO-DO-Liste (s. meine Mail vom 17.06.) > erledigt!!!! > Punkt 1b (falscher Zeilenumbruch) kann jeder selbst abhaken, in dem man > das addGermanvocabulary.st nach dem Runterladen noch mal prüft, ob die > Zeilenenden wirklich im Mac-Format sind. Bei mir tut es dann, erkennbar > daran, dass alle Hilfeblasen bei Geräten und Lager auf Deutsch sind, > außer für "Zufall" und "Object-Katalog". > 3 (Menü auf Japanisch) scheint nur im 3.4-Image ein Problem zu sein. > Bleiben noch 2 (unmatched string quotes), 5, 6 und 7. > > Viele Grüße > von einer ziemlich begeisterten > Esther > -- Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/ |
> Als nächstes schreibe ich das cs so um, dass es Schriftfamilien erkennt
> und den Austausch richtig vornimmt. > Ich habe die vorläufige version mal angehängt. > Hallo, Seht gut! Leider kann ich kein Attachement finden (ich wuerde gerne die Version auf dem wiki auf einen aktuellen stand bringen). Marcus -- Marcus Denker [hidden email] -- Squeak! http://squeak.de |
In reply to this post by Esther Mietzsch
Hallo,
> 3 (Menü auf Japanisch) scheint nur im 3.4-Image ein Problem zu sein. > Bleiben noch 2 (unmatched string quotes), 5, 6 und 7. > Ich habe die Todo-liste auf dem Wiki entsprechend editiert, neues Image fuer das deutsche Squeak werde ich bald auf das wiki stellen. Marcus -- Marcus Denker [hidden email] -- Squeak! http://squeak.de |
In reply to this post by Marcus Denker-2
Uuups,
tut mir leid, hab ich wohl vergessen. Gruss, Torge On Tue, 1 Jul 2003 16:07:59 +0200, Marcus Denker <[hidden email]> wrote: >> Als nächstes schreibe ich das cs so um, dass es Schriftfamilien erkennt >> und den Austausch richtig vornimmt. >> Ich habe die vorläufige version mal angehängt. >> > Hallo, > > Seht gut! > > Leider kann ich kein Attachement finden (ich wuerde gerne die Version auf > dem wiki auf einen aktuellen stand bringen). > > Marcus > -- Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/ |
On Wed, Jul 02, 2003 at 11:56:42AM +0200, Torge Husfeldt wrote:
> Uuups, > > tut mir leid, > hab ich wohl vergessen. > Ok, ein aktuelles image (Version 3.5) http://www.ira.uka.de/~marcus/SqueakDeutsch.zip Umlaute werden richtig angezeigt, und auch die mouse-over Hilfe ist jetzt in deutsch. Marcus -- Marcus Denker [hidden email] -- Squeak! http://squeak.de |
Am Mittwoch, 2. Juli 2003 16:04 schrieb Marcus Denker:
> On Wed, Jul 02, 2003 at 11:56:42AM +0200, Torge Husfeldt wrote: > > Uuups, > > > > tut mir leid, > > hab ich wohl vergessen. > > Ok, ein aktuelles image (Version 3.5) > http://www.ira.uka.de/~marcus/SqueakDeutsch.zip > > Umlaute werden richtig angezeigt, und auch die mouse-over Hilfe > ist jetzt in deutsch. > > Marcus Das sieht aber jetzt schön aus! Wenn wir uns auf dem Linux-Tag treffen, gebe ich Euch ein Eis aus. Gruß Esther |
Free forum by Nabble | Edit this page |