Dmitri Pavlov's Plain TeX page

Unicode Plain TeX with UTF-8 encoding

plain-utf8.tex
This file provides mapping from a part of Unicode's code space encoded in UTF-8 into TeX commands. Most of TeX's \chardef/\mathchardef definitions are covered. See the comments in the file for exceptions. Current experimental version only has support for math symbols and a few letters and punctuation signs. So far there is no support for accented letters.

Russian Plain TeX

Contents of the package

plain-ru.tex
This file contains Russian modifications for Plain TeX. The following aspects are covered:
lhcodes.mf
This file contains codes for all additional characters of LH fonts with respect to CM fonts. Please note that six non-letter character codes use explicit numeric values, therefore you have to change them manually if you change the encoding of this file.

If you want to use the standard European A4 paper size, add the following two lines to your TeX source:
\hsize=159.4241038mm
\vsize=243.9617787mm

How to install this package

  1. Save plain-ru.tex and lhcodes.mf into the same directory.
  2. Run tex -ini plain-ru.tex and type \dump when TeX finishes its job.
  3. Place the resulting plain-ru.fmt file in the format file directory (usually texmf-var/web2c).
  4. Now use tex -fmt plain-ru filename to compile filename.
  5. Alternatively, in several distributions you may setup a symbolic link to tex with the same name as the corresponding .fmt file.

Issues to resolve

Russian CWEB

I was unsatisfied with the poor quality of the existing adaptations of CWEB to the Russian language and decided to make my own translation. Here is the result: cwebmac-ru.tex. All built-in English phrases are translated. LH fonts are used.

If you want to use the A4 paper size with CWEB, add the following four lines to your TeX source:
\pagewidth=159.4241038mm
\pageheight=243.4537787mm
\fullpageheight=244.2157787mm
\setpage

Encoding issues

All the three files use the standard Russian encoding KOI8-R. If you want to use some other one-byte encoding, just recode them. Also the file lhcodes.mf requires minor manual modifications. Follow the instructions in this file.

Contact

Feedback welcome: pavlov at math.

All files on this page are copyright © 2008 by Dmitri Pavlov.

You may redistribute these files under the terms of GNU General Public License version 3.