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: Error during redisplay Date: Wed, 27 Feb 2008 11:07:54 -0500 Message-ID: References: Reply-To: rms@gnu.org NNTP-Posting-Host: lo.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: ger.gmane.org 1204128643 6358 80.91.229.12 (27 Feb 2008 16:10:43 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 27 Feb 2008 16:10:43 +0000 (UTC) Cc: lekktu@gmail.com, emacs-devel@gnu.org To: Kenichi Handa Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Feb 27 17:11:02 2008 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.50) id 1JUOrm-0004h1-P6 for ged-emacs-devel@m.gmane.org; Wed, 27 Feb 2008 17:10:47 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JUOrG-0004AM-HI for ged-emacs-devel@m.gmane.org; Wed, 27 Feb 2008 11:10:14 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JUOp3-0002uh-Uy for emacs-devel@gnu.org; Wed, 27 Feb 2008 11:07:58 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JUOp2-0002ts-Ca for emacs-devel@gnu.org; Wed, 27 Feb 2008 11:07:57 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JUOp2-0002tm-5J for emacs-devel@gnu.org; Wed, 27 Feb 2008 11:07:56 -0500 Original-Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JUOp1-0003o3-Sr for emacs-devel@gnu.org; Wed, 27 Feb 2008 11:07:55 -0500 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.67) (envelope-from ) id 1JUOp0-0003qL-Pi; Wed, 27 Feb 2008 11:07:54 -0500 In-reply-to: (message from Kenichi Handa on Wed, 27 Feb 2008 10:28:04 +0900) X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) 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:90623 Archived-At: The current design requires to add `composition' property to a string to properly display the string if it contains, for instance, some of Indic characters, and to add `auto-composed' property to avoid the repeated generation of `composition' property. It seems unclean to modify a string just because it gets used for redisplay. We do that for fontification, but that's an explicit add-on feature which is not part of mere correct display of some text. What happens with a read-only buffer? Does auto-composition modify the read-only buffer, or does the text display wrong? If mode-line-format has not been modified, I think it doesn't contain any characters that require composition (except for the case that we support such ligatures as "Fi" in the future). One way is to check if the string contains any such characters, and if not, avoid any composition processing. As the string tends to be short, doing that check repeatedly will not be that inefficient. That sounds like a good fix for this case, but it may not fix the whole problem. > If they SHOULD have these properties, probably we should make sure they have > these properties from the start, or from an early point in building Emacs. That's impossible. How to compose them depends on which font to use. Does this mean that redisplaying with different fonts will keep changing the composition properties in one string back and forth between different values?