From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: [PATCH] Unicode Lisp reader escapes Date: Tue, 16 May 2006 23:45:26 -0400 Message-ID: References: <17491.34779.959316.484740@parhasard.net> <877j4z5had.fsf@gmx.de> <87irohfrx1.fsf@gmx.de> <87iroarr9i.fsf-monnier+emacs@gnu.org> <87d5egrb4c.fsf-monnier+emacs@gnu.org> <87ves8p0us.fsf-monnier+emacs@gnu.org> <87ves8ngtb.fsf@gmx.de> <87u07qcnaa.fsf@gmx.de> Reply-To: rms@gnu.org NNTP-Posting-Host: main.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: sea.gmane.org 1147837552 29670 80.91.229.2 (17 May 2006 03:45:52 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 17 May 2006 03:45:52 +0000 (UTC) Cc: emacs-devel@gnu.org, monnier@iro.umontreal.ca, handa@m17n.org, alkibiades@gmx.de Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed May 17 05:45:51 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1FgCyi-0002L0-QL for ged-emacs-devel@m.gmane.org; Wed, 17 May 2006 05:45:41 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FgCyi-0004zq-8L for ged-emacs-devel@m.gmane.org; Tue, 16 May 2006 23:45:40 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1FgCyX-0004zZ-1A for emacs-devel@gnu.org; Tue, 16 May 2006 23:45:29 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1FgCyV-0004zN-WB for emacs-devel@gnu.org; Tue, 16 May 2006 23:45:28 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FgCyV-0004zK-Sf for emacs-devel@gnu.org; Tue, 16 May 2006 23:45:27 -0400 Original-Received: from [199.232.76.164] (helo=fencepost.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.52) id 1FgD1I-00084V-7T for emacs-devel@gnu.org; Tue, 16 May 2006 23:48:20 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.34) id 1FgCyU-0001Te-Re; Tue, 16 May 2006 23:45:26 -0400 Original-To: Oliver Scholz In-reply-to: <87u07qcnaa.fsf@gmx.de> (message from Oliver Scholz on Tue, 16 May 2006 11:49:17 +0200) 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:54617 Archived-At: Well, as already mentioned, unification and fragmentation are implemented by means of translation tables. Unification, for instance, for non-CCL decodings happens by means of modifying the parent of the char table in the variable `standard-translation-table-for-decode'. This suggests another implementation: make two such tables, one for unification and one not for unification, and the mode can choose which one gets used. I'd like to understand a little more of the current design. The translation table that unification alters is the parent of the one in `standard-translation-table-for-decode'. What is the purpose of making these child maps? I have no idea whether it is simple to make this variable buffer local or not. But, well, it's certainly intrusive to change such things at the very heart and core of Emacs' decoding/encoding apparatus. This kind of change is not intrusive at all. It ought to be pretty trivial. The translation table relevant for unification in CCL decoding is `ucs-translation-table-for-decode' (AFAICS only the cyrillic encodings make use of this). The translation table relevant for fragmentation of UCS coding systems is `utf-translation-table-for-decode'. You'd have to find a way to make *that* buffer local. It looks very easy to make the choice of table dynamic for the Cyrillic coding systems. What does "fragmentation" mean? I do not recall seeing that term in this context.