[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Combining German Umlauts and Russian Cyrillic characters

From: Valeriy E. Ushakov
Subject: Re: Combining German Umlauts and Russian Cyrillic characters
Date: Tue, 25 Nov 1997 15:29:41 +0300

On Mon, Nov 24, 1997 at 10:55:35PM +0700, Victor Sudakov wrote:

> Is combining German umlauts and Russian Cyrillic Characters in one document
> possible? If yes, then how do I do it? 

* Simple answer

It's not a problem for Lout.

  German @Language  { SomeLatin1Font   } @Font { ...german text... }
  Russian @Language { SomeCyrillicFont } @Font { ...russian text... }

It *is* a problem for a text editor you'll use to prepare Lout file.
Usually text editor uses single font to display edited text.  This
font is either latin1 (western european) or koi8-r (cyrillic).  Thus
either your umlauts will be displayed as russian letters or your
russian letters will be displayed as latin with diacritic marks.

If you instruct Lout to use properly encoded font, than the char codes
will be mapped to proper glyphs (this is what .lcm files are for).

* Emacs can do that.

You *can* teach Emacs to use different fonts for passages in diffrent
langauges.  A good enhancement for a lout-mode would be a change
language command that will put lout @Language command and switch the
font (registry+encoding suffix in XLFD).  Of course, parsing @Language
and switching fonts when file is found into a buffer and displayed is
also necessary.

* Thoughts on font selection scheme.

This also poses an interesting question on Lout font selection scheme
(FSS).  I've converted some windows ttf into type1 fonts and want to
use those with Lout.  In particular I converted cyrillic variants of
Times, Arial (Helvetica) and Courier.  Now this fonts are distinct
(from the Lout viewpoint) from Latin1 Times &co.  If I want to change
from Russian to German, I have to manually switch the font too from
TimesCyr to, Times.  Of course, one can use

  macro @German { @Font German @Language }

and use { Times } @German { .... }, but this is error prone as one
have to track the current font manually.

So we need to study prospects of adopting some more sophisticated FSS
for Lout, may be similar to LaTeX's NFSS.  If Lout is to adopt Unicode
(and it's just a matter of time), this kind of FSS is unavoidable,
because during processing of, say, mixed Latin(eastern or western) and
Cyrillic text, Lout will have to emit PS commands to change fonts
automatically selecting, properly encoded type1 font (type1 encoding
vector is 8 bit).  Either a single font with all the necessary glyphs
can be used by swapping encoding vector on the fly or preparating
several reencoded fonts that share glyphs but has proper encoding
vectors, or several distinct fonts each of which has a subset of
necessary glyphs (say for eastern latin, for western latin and for
cyrillic) can be used.

Thus we will need some way to desribe a mapping from character codes
in some coded set into pairs of set of glyphs (font is a set glyph +
encoding vector) with character codes in another coded set (encoding
vector proper).

Any comments on this FSS stuff?

SY, Uwe
address@hidden                         |       Zu Grunde kommen
http://www.ptc.spbu.ru/~uwe/            |       Ist zu Grunde gehen

reply via email to

[Prev in Thread] Current Thread [Next in Thread]