bug-gnu-emacs
[Top][All Lists]
Advanced

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

Proposal about adding cp1251 (Russian Windoz) encoding in Emacs


From: Krjukov Victor
Subject: Proposal about adding cp1251 (Russian Windoz) encoding in Emacs
Date: Tue, 27 Aug 2002 13:04:16 +0400

Greetings, Emacs developers.

MULE support in Emacs contains several encodings for Russian language: 
ISO 8859-5, used as main encoding (it's called a 'standard' encoding but
_nobody_ here actually use it);
koi8-r (de-facto standard in email transmission and standard in *nix
systems - almost all *nix systems in Russia use it);
and Alternativnyj (also known as cp866) - an ancient encoding come from
DOS world.

But Emacs has no support for cp1251 (standard Russian encoding in
Windows), though we have and activelly use Emacs for Windows.

I've made several changes in several *el files from Emacs 21.2
distribution, but it seems to me that you need to recompile Emacs to
include additional language in MULE support (and I have no C compiler on
my Windows system).

Could someone check attached files and probably implement them in future
Emacs version? This would be a great help to russian windows-emacs
users.

Thank you very much for this great program,

                Victor V. Kryukov.

PS. I've also made some changes in lisp/language/cyrillic.el: fix some
typo (staff instead of stuff ;) and fix some bugs (e.g.
cyrillic-encode-koi8-r-char instead of
cyrillic-encode-alternativnyj-char at the bottom of folloving excerpt in
lines 203-217 of cyrillic.el looks really strange).

I have also another question: comparing sections in cyrillic.el for
koi8-r and for alternativnyj you may notice that one line       
(if (r0 == ,(charset-id 'cyrillic-iso8859-5))
only present for define-ccl-program ccl-encode-koi8 and not in
ccl-encode-alternativnyj - is it a bug or a feature?
---
(make-coding-system
 'cyrillic-alternativnyj 4 ?A
 "ALTERNATIVNYJ 8-bit encoding for Cyrillic"
 '(ccl-decode-alternativnyj . ccl-encode-alternativnyj)
 `((safe-chars . ,(let ((table (make-char-table 'safe-chars))
                        (i 0))
                    (while (< i 256)
                      (aset table (aref
cyrillic-alternativnyj-decode-table i)
                            t)
                      (setq i (1+ i)))
                    table))
   (valid-codes (0 . 175) (224 . 241) 255)
   (charset-origin-alist (cyrillic-iso8859-5 "ALTERNATIVNYJ"
        
cyrillic-encode-koi8-r-char))))
---

----
Sincerely Yours, Victor V. Kryukov, UFG
phone: +7501 967 3727, ext. 4387
email: vkryukov@ufg.com




reply via email to

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