From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Usage of standard-display-table in MSDOS Date: Fri, 27 Aug 2010 13:24:02 +0300 Message-ID: <83aao8mjzx.fsf@gnu.org> References: Reply-To: Eli Zaretskii NNTP-Posting-Host: lo.gmane.org X-Trace: dough.gmane.org 1282904549 19233 80.91.229.12 (27 Aug 2010 10:22:29 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 27 Aug 2010 10:22:29 +0000 (UTC) Cc: emacs-devel@gnu.org To: Kenichi Handa Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Aug 27 12:22:28 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Oow4o-00078m-2P for ged-emacs-devel@m.gmane.org; Fri, 27 Aug 2010 12:22:26 +0200 Original-Received: from localhost ([127.0.0.1]:52462 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oow4n-00009q-6a for ged-emacs-devel@m.gmane.org; Fri, 27 Aug 2010 06:22:25 -0400 Original-Received: from [140.186.70.92] (port=52171 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oow4Z-00009Z-ON for emacs-devel@gnu.org; Fri, 27 Aug 2010 06:22:12 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Oow4Y-00036f-9D for emacs-devel@gnu.org; Fri, 27 Aug 2010 06:22:11 -0400 Original-Received: from mtaout20.012.net.il ([80.179.55.166]:50139) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Oow4X-00036U-U1 for emacs-devel@gnu.org; Fri, 27 Aug 2010 06:22:10 -0400 Original-Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0L7T009002Y3CY00@a-mtaout20.012.net.il> for emacs-devel@gnu.org; Fri, 27 Aug 2010 13:21:54 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([84.228.186.164]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0L7T008K43GHH0D0@a-mtaout20.012.net.il>; Fri, 27 Aug 2010 13:21:54 +0300 (IDT) In-reply-to: X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:129289 Archived-At: > From: Kenichi Handa > Date: Mon, 23 Aug 2010 21:44:07 +0900 > > In msdos-initialize-window-system (of term/pc-win.el), I > found this code: > > ;; 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. It's quite possible that this doesn't work in Emacs 23 and later like it did in older versions. But to figure out what, if anything, is needed instead, I would like first to understand better what you are saying. It sounds like you are saying that standard-display-8bit no longer does what its doc string advertises: "Display characters in the range L to H literally." The "literally" part is no longer true, is it? And one other question: why do we do something similar in standard-display-european-internal? Specifically: (defun standard-display-european-internal () ;; Actually set up direct output of non-ASCII characters. (standard-display-8bit (if (eq window-system 'pc) 128 160) 255) (I'm asking about the case where window-system is _not_ `pc'.) This is called in set-display-table-and-terminal-coding-system under the following conditions: (let ((coding (get-language-info language-name 'unibyte-display))) (if (and coding (or (not coding-system) (coding-system-equal coding coding-system))) (standard-display-european-internal)