On May 6, 2007, at 7:58 , Markus Schlager wrote:
Vielleicht weiß jemand von euch Rat:
Ich habe squeak mit verschiedenen Images (darunter auch Scratch) auf verschiedenen Linuxen laufen. Auf meiner alten SuSE 9.1, die noch mit ISO-Zeichensätzen arbeitet, ist soweit auch alles in Ordnung. Auf den aktuelleren ubuntu-Rechnern mit ubuntu dapper bzw. edgy (unter feisty habe ich es noch nicht ausprobiert), die schon mit unicode-Zeichensätzen arbeiten, habe ich beispielsweise im workspace (oder wo sonst auch immer) keine Chance, deutsche Sonderzeichen einzugeben. Stattdessen wird typischerweise ein 'A' mit '~' angezeigt.
Der Versuch, das image aus der Kommandozeile mit einem Befehl der Art 'squeak -encoding UTF-8 pfad/zum/squeak.image' bringt keine Verbesserung. Nur werden die Sonderzeichen nun durch so etwas wie Wurzelzeichen ersetzt. Dasselbe auch mit ISO-8895-15 oder ISO-8859-1.
Was soll ich tun? Hängt es an der Umgebungsvariablen LC_ALL?
Das ist alles etwas komplizwickt, das stimmt, hängt von der VM und dem Image ab. Du solltest auf jedenfall erstmal die neueste VM nehmen, damit wir von den gleichen Voraussetzungen ausgehen können.
Dir geht es vorerst nur um Tastatureingaben, ja? Dazu kommen dann nämlich noch Dateinamen mit Umlauten, die auch etwas Überzeugungsarbeit brauchen um zu funktionieren.
Und ich nehme an, du hast keine eigenen Fonts im Image installiert, weil dann möglicherweise das, was du tippst und eingibst nicht das ist, was auf dem Bildschirm erscheint.
Die VM-Seite der Dinge ist z.B. hier erklärt;
http://www.visoracle.com/squeak/faq/font-encoding.html
Soweit ich weiß erwarten alle Images von einer Linux VM nach wie vor MacRoman-codierte Tastatureingaben. Die VM wandelt also die Zeichen, die du tippst, in MacRoman um. Im Image werden diese dann neuerdings (seit 3.8) in Latin1 (ISO-8859-1) umgesetzt, da das jetzt das interne Encoding von ByteStrings ist (war vorher MacRoman). D.h. in einem 3.7- Image sind die Fonts MacRoman-codiert, danach Latin1.
Hier ist was mein 3.8 Image sagt:
LanguageEnvironment current "a Latin1Environment" LanguageEnvironment defaultInputInterpreter "a MacRomanInputInterpreter"
P.S.: Versteht die Linux-squeak-VM die Option -swapbtn nicht mehr?
Doch. Die gehört aber zum X11-Modul, deswegen musst du ein -vm- display-X11 voranstellen.
- Bert -