From: esz001@cck.coventry.ac.uk (Will Overington)
Newsgroups: alt.uu.future,alt.education.distance
Subject: TOOLS Roman (including Esperanto) and Cyrillic over the net
Date: 22 Jul 92 14:16:13 GMT
Organization: Coventry University, Coventry, UK


22nd July 1992

TOOLS Roman (including Esperanto) and Cyrillic over the net

As it looks like there is enthusiasm for the course on Russian,
with grammar explanations including references to Esperanto,
though we still need someone with knowledge of Russian to do the
teaching, I am here setting out some thoughts on how we are to be
able to send files which need to be used to display English,
Esperanto and Russian on the screens of computers, around on the
net.

We are realistically talking about a 7 bit ASCII character set
being used.  This will be no problem at all for the English
words, which use only Roman characters which are in the ASCII
character set.

The Esperanto will need a little care, though I have previously
devised a system, the steloj system (pronounce "stel-oy") which
will allow the twelve special Esperanto characters to be included
in files with no problems at all for sending them around the net
as 7 bit ASCII files.

Here is a short summary of the steloj system, extracted from a
longer item on expressing Esperanto on computer systems that I
posted some time ago.  Please bear in mind that what you see in
the file is what you type on the keyboard, but that which you see
on the screen is the proper characters, with the underscore
characters shown as spaces, as a graphics screen is used.

The steloj method (pronounced "stel-oy", the Esperanto word for
stars), which I devised, uses three different methods, depending
upon where the accent occurs.  An accented first or second letter
of a sentence is indicated by the first letter of the sentence
being put in lowercase.  An accented first or second letter of
any other word is expressed by an underscore character instead of
a space preceding the word, even if this underscore character is
at the end of the previous line.  Any other accented character is
put in the opposite case to the second letter of the word.

The sentence becomes as follows.

si_acetis kaj manGis naU pomojn.

This has advantages for computer processing in that the same
number of characters are used as for the original sentence and
each keystroke can be made to produce the correct letter on the
graphics screen as one proceeds, without needing to backtrack and
redisplay an unaccented first attempt as an accented second
attempt.  Also, the text is reasonably intelligible without
needing to be passed through special software.

Thus far, I have written the system to work on a PC with a VGA
display.  Can people please say if that presents a problem for
them to use such software and say what they do have and then
maybe the group can see what can be done as regards CGA, EGA on
PCs and other types of computers.

Now, when it comes to the Cyrillic characters, I am seeking
advice on what to do.  I have a suggestion, but it is put forward
as a computer programmer's solution, albeit a computer programmer
who has for many years had a hobby interest in typography.  I do
not know whether it will be suitable as a tool from a linguistic
standpoint.  Could people please comment, either by e-mail or by
posting to the group so that a discussion may develop.

I have it in mind that the program will be in one of three modes
as it reaches a character in the file to be displayed.  The modes
are ASCII, Esperanto and Cyrillic.  How that character is
displayed and whether the mode is changed will depend upon what
mode the program is in and which character is being considered
and upon the states of a few Boolean variables.  These Boolean
variables are so that, for example, an underscore in Esperanto
mode may set a flag so that an accented character is produced as
either the first or second character of the next word, as
appropriate.

The program will start up in Esperanto mode.

In Esperanto mode, ordinary Esperanto text may be entered on an
ordinary English keyboard and displayed on the screen using the
correct Esperanto accented characters.  The method used means
that the underscore character may not be used as part of the
ordinary text, as it is used to signal accents.  Also, a maximum
width of 79 characters is permitted, as the 80th column may need
to carry an underscore character (displayed as a space) so as to
signal an accent on the first or second letter of the first word
of the next line.  I suggest that the [ character and the ]
character respectively are used to signal entry to Cyrillic mode
from Esperanto mode and exit from Cyrillic mode to Esperanto
mode.  Thus a file seen in its ASCII state, which is not, I
emphasise, how it will appear on the screen, will have Cyrillic
sections enclosed within [ and ] square brackets.  In practice, I
will make [ used in Cyrillic mode and ] in Esperanto mode non-
erroneous.

ASCII mode is really not intended to be used much, but does
provide the facility to be able to explain what to type on the
keyboard and what will appear on the screen, all displayable on
the screen, by putting the instructions on what to type within an
ASCII mode section and the what will appear on the screen
description within Esperanto and Cyrillic mode sections.

Now for the tricky bit.

The Cyrillic alphabet, as used for modern Russian, has 33
characters, each of which is going to need to be displayed in
uppercase and lowercase forms.  Within my system, I store
characters as integers.  Characters 32 to 255 are identical to
the PC character set.  Esperanto characters start at 256, then
there are a few special symbols that I have added.  I suggest
starting the Cyrillic characters at 290, for A, with 291 for the
lowercase version, then 292 for the character that is pronounced
like an English B, but which does not look like an English B,
then 293 for its lowercase version, then 294 for the character
that looks like an English B but is pronounced like an English V,
then 295 for its lowercase version.

I chose 290 as the first even number after (256 + 32).  I have
chosen this uppercase are even, lowercase are odd, pairing
because there are languages other than Russian that use Cyrillic
characters and there are a few Cyrillic characters that are not
used in Russian.  Also, pre-1918 Russian texts can have at least
one other character in them.  This method will allow these extra
characters to be added as time goes on, as desired.

The question arises as to how these Cyrillic characters may be
entered using a standard English keyboard.  Someone with
specialist knowledge may like to post a note on whether there are
specialist Cyrillic and combined Roman/Cyrillic keyboards
available, and this would be interesting.  However, I feel that
most of us are going to have to make do as best we can using
ordinary English keyboards.

In looking through the Russian alphabet, at first glance there
appear to be a number of characters that are the same as in the
Roman alphabet.  These include B and P.  However, the B is like
English V and the P is like English R.  The sound equivalent of
English B in Russian is a Cyrillic character that looks like the
bottom half of a B superimposed on a Greek Capital Gamma.  The
Cyrillic G is like a Greek Gamma.  There are a number of these
Greek-like characters, which is not surprising, as the Cyrillic
alphabet was devised by St. Cyril, a Greek Orthodox missionary to
what is now Russia, in order to express the sounds of the
language that he found there.

I suggest that an approach to the problem is made that, in
deciding which ASCII character to use in an ASCII file or at an
English keyboard in order to make the Cyrillic character appear
on the screen, the main consideration shall be the sound of the
character.  For example, if one presses B on the keyboard then
one gets the Cyrillic character that represents a B sound, that
is, the character that looks like a superpositioning of the
bottom half of a B and a Greek Capital Gamma.  The pressing of V
on the keyboard would produce the Cyrillic character that looks
like a Roman B, but is pronounced like an English V.

This approach, using sounds, quickly means that the key to press
in order to produce a given Cyrillic character is fairly obvious
for about 19 of the 33 characters, which is a good start.  For
example, F for the character that looks like a Greek Capital Phi
and Z for the character that looks like a figure 3.  A further
few can be produced without too much strain, though maybe the odd
raised eyebrow!  For example, there is a very exotic character
that looks like a K and its mirror image about the vertical line
superpositioned one on the other.  This has the "zh" sound as in
the English word "pleasure".  Now, that sound is the sound of a J
circumflex in Esperanto, so it would seem not unreasonable for
the present purpose to use J as the key to press to get that
character upon the screen.

However, even with this, and using C as the character for the
sound that is like the Esperanto C circumflex sound, namely the
ch in chair, there are still a number of characters left over.

I am now trying to think out a system, and would also welcome
comments and suggestions on this aspect.  Thus far, I have two
possible approaches, neither of which I find particularly
appealing, but, faced with getting the characters into the
computer, something needs to be used.

The first idea is, going away from sounds, to use association of
ideas of shape.  I have thought of using W and Q for the sh and
shch sounds, really because these are amongst the few letters
left over, selecting which is to be which upon the somewhat
tenuous basis that the W looks more like it than any other Roman
character and the Q has a tail.  Yes, I know, its not too good is
it!

The second idea is that the number keys 1, 2, 3, 4, 5, 6, 7, 8,
9, 0 along the top of the keyboard are associated with the
vowels, A, a, E, e, I, i, O, o, U, u.  Russian does not have a yi
sound, but does have ya, ye, yo, yu.  Again, not too good, but
that is another four characters enterable in both uppercase and
lowercase.  After that, with just a few remaining, maybe we shall
need to start looking at what punctuation characters are needed
to produce a Russian text and what may be used to convey the
characters, remembering that we shall need two for each
character, one for uppercase and one for lowercase.

People interested in taking the course may like to have a look at
a textbook on Russian in a library and draw up a table as
suggested in this note.  We will all need to get used to using
Cyrillic characters and this exercise may well be as good a way
as any of doing it.
Xref: sparky alt.uu.future:118 alt.education.distance:241