[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Usage of standard-display-table in MSDOS
From: |
Ehud Karni |
Subject: |
Re: Usage of standard-display-table in MSDOS |
Date: |
Tue, 24 Aug 2010 14:13:46 +0300 |
On Tue, 24 Aug 2010 14:34:37 Stephen J. Turnbull wrote:
> >
> > ;; In multibyte mode, we want unibyte buffers to be displayed
> > ;; using the terminal coding system, so that they display
> > ;; correctly on the DOS terminal; in unibyte mode we want to see
> > ;; all 8-bit characters verbatim. In both cases, we want the
> > ;; entire range of 8-bit characters to arrive at our display code
> > ;; verbatim.
> > (standard-display-8bit 127 255)
> >
> > Is it really working in non-iso-8859-1 environment as
> > expected? Note that 128..255 are latin-1 characters after
> > Emacs 23, not raw-bytes. So, I think the above call will
> > make 8-bit bytes in unibyte buffer displayed as latin-1
> > characters, but as the termial encoding system doesn't
> > support latin-1 chars in, for instance, greek environment,
> > just '?' will be displayed.
>
> Hebrew and Cyrillic are other obvious candidates for testing here.
> They seem to have more active participants on emacs-devel.
>From my checks this does not work on text terminals (it really depends
on the LANG env variable). I had this code in Emacs 21.3:
(defun set-standard-display-table ()
(setq standard-display-table (make-display-table))
(standard-display-8bit 127 254))
I then set the DOS Hebrew chars (128-144) each to a vector:
[ 169 <the corresponding UNIX Hebrew char> ]
Then visit a file (literally).
In Emacs 21.3 it works fine with any value of LANG, show the Hebrew
chars as they should, and Hebrew DOS (CP862) chars with a prefix.
In Emacs 23.1 it works only if the LANG is set to a Latin-1 value
(eg en_GB).
I want to see Hebrew (iso-8559-8) characters even when LANG=C, because
setting the LANG to he_IL changes to much other things (for example,
it change the `ls' output, which breaks dired).
The problem as I see it is that the characters it the vectors in the
display table are going further translation and not used "literally".
The use of UTF-8 (which works well on X) is not an option. Many of
the users has text terminals, and most of the data file viewed are
in iso-8859-8 or even Hebrew DOS (CP862).
I recently install some Emacs stuff in an Israeli insurance company
and because of this problem I used 21.3 instead of newer version.
Ehud.
--
Ehud Karni Tel: +972-3-7966-561 /"\
Mivtach - Simon Fax: +972-3-7976-561 \ / ASCII Ribbon Campaign
Insurance agencies (USA) voice mail and X Against HTML Mail
http://www.mvs.co.il FAX: 1-815-5509341 / \
GnuPG: 98EA398D <http://www.keyserver.net/> Better Safe Than Sorry
- Usage of standard-display-table in MSDOS, Kenichi Handa, 2010/08/23
- Usage of standard-display-table in MSDOS, Stephen J. Turnbull, 2010/08/24
- Re: Usage of standard-display-table in MSDOS,
Ehud Karni <=
- Re: Usage of standard-display-table in MSDOS, Eli Zaretskii, 2010/08/24
- Re: Usage of standard-display-table in MSDOS, Ehud Karni, 2010/08/25
- Re: Usage of standard-display-table in MSDOS, Eli Zaretskii, 2010/08/25
- Re: Usage of standard-display-table in MSDOS, Ehud Karni, 2010/08/26
- Re: Usage of standard-display-table in MSDOS, Eli Zaretskii, 2010/08/26
- Re: Usage of standard-display-table in MSDOS, Ehud Karni, 2010/08/27
- Re: Usage of standard-display-table in MSDOS, Eli Zaretskii, 2010/08/27
Re: Usage of standard-display-table in MSDOS, Eli Zaretskii, 2010/08/27