[Oberon] Portings Texts.Mod to Oberon-7, my Artemis project
Michael Schierl
schierlm at gmx.de
Sat Jun 19 13:39:55 CEST 2021
Hello Charles,
Charles Perkins wrote:
> Charles Perkins <chuck at kuracali.com wrote:
>> Michael Shierl has provided some patches
Everyone writes my name wrong :-(
>> <https://github.com/schierlm/Oberon2013Modifications/blob/master/UTF8Charset/UTF8Charset.patch>
>> to Oberon-O7 in support of utf8 and fonts with large numbers of
>> glyphs in them, which I adopted and wrote a technote about.
>
> Granted, none of the source texts
> actually used Unicode in any way... the Oberon-07 language has no
> concept of characters wider than 8 bits. A unicode aware language, even
> merely to support unicode glyphs in strings, would require an update to
> the language report, in my opinion.
It does work in Integrated Oberon:
https://schierlm.github.io/OberonEmulator/emu.html?image=IntegratedOberonDiskImage
MODULE Esperanto;
IMPORT Texts, Oberon;
PROCEDURE Test*;
VAR W: Texts.Writer;
BEGIN Texts.OpenWriter(W);
Texts.WriteString(W, "Eĥoŝanĝo ĉiuĵaŭde");
Texts.WriteLn(W);
Texts.Append(Oberon.Log, W.buf)
END Test;
END Esperanto.
If you transfer this file to Oberon using (emulated) PCLink, compile it,
and run it while using a Unicode capable font (e.g. Tahoma) in the Log
viewer, the text appears just fine.
The characters in memory are still 8 bits wide, using UTF-8 encoding.
The "magic" happens when the string gets converted to a Texts.Text,
which is Unicode aware.
Regards,
Michael
More information about the Oberon
mailing list