From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Kenichi Handa Newsgroups: gmane.emacs.devel Subject: Re: Compositions and bidi display Date: Tue, 04 May 2010 18:19:30 +0900 Message-ID: References: <3A521851-F7CC-45DB-A2ED-8348EF96D5CF@Freenet.DE> <83fx2q5w86.fsf@gnu.org> <834oj22e96.fsf@gnu.org> <837hnuys42.fsf@gnu.org> <83mxwoxo1t.fsf@gnu.org> <83d3xjxys1.fsf@gnu.org> <83tyqtwh7z.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1272964612 28604 80.91.229.12 (4 May 2010 09:16:52 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 4 May 2010 09:16:52 +0000 (UTC) Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue May 04 11:16:50 2010 connect(): No such file or directory 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 1O9EFF-0001Sn-Ty for ged-emacs-devel@m.gmane.org; Tue, 04 May 2010 11:16:50 +0200 Original-Received: from localhost ([127.0.0.1]:43625 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O9EFE-0003nQ-Ip for ged-emacs-devel@m.gmane.org; Tue, 04 May 2010 05:16:48 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1O9EF5-0003mv-QF for emacs-devel@gnu.org; Tue, 04 May 2010 05:16:39 -0400 Original-Received: from [140.186.70.92] (port=58835 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O9EEr-0003l3-Aq for emacs-devel@gnu.org; Tue, 04 May 2010 05:16:39 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1O9EEj-0006Eb-FJ for emacs-devel@gnu.org; Tue, 04 May 2010 05:16:25 -0400 Original-Received: from mx1.aist.go.jp ([150.29.246.133]:41036) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1O9EEf-0006CD-2D; Tue, 04 May 2010 05:16:13 -0400 Original-Received: from rqsmtp2.aist.go.jp (rqsmtp2.aist.go.jp [150.29.254.123]) by mx1.aist.go.jp with ESMTP id o449G8u2022169; Tue, 4 May 2010 18:16:08 +0900 (JST) env-from (handa@m17n.org) Original-Received: from smtp2.aist.go.jp by rqsmtp2.aist.go.jp with ESMTP id o449G8cg007594; Tue, 4 May 2010 18:16:08 +0900 (JST) env-from (handa@m17n.org) Original-Received: by smtp2.aist.go.jp with ESMTP id o449G8cK012543; Tue, 4 May 2010 18:16:08 +0900 (JST) env-from (handa@m17n.org) Original-Received: from handa by etlken with local (Exim 4.69) (envelope-from ) id 1O9EHq-0002q3-NF; Tue, 04 May 2010 18:19:30 +0900 In-Reply-To: (message from Eli Zaretskii on Mon, 03 May 2010 03:31:00 -0400) X-detected-operating-system: by eggs.gnu.org: Solaris 9 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:124496 Archived-At: In article , Eli Zaretskii writes: > > > If the buffer or string is full of composed characters, then yes, it > > > would be a slowdown. Especially if the number of ``suspect'' stop > > > positions is much larger than the number of actual composition > > > sequences. But what else can be done, given the design of the > > > compositions that doesn't let us know the sequence length without > > > actually composing the character? > > > > Isn't it faster to call bidi_get_next_char_visually > > repeatedly. At least it doesn't call Lisp. > I'm confused. bidi_get_next_char_visually is what we use now to move > through the buffer, so using it gets me back at the problem I'm trying > to solve: how to know, at an arbitrary position returned by > bidi_get_next_char_visually, whether it is inside a composition > sequence. It seems that we are discussing based on different strategies for solving the current problem. My current plan is not to make bidi_get_next_char_visually aware of composition, but to make composition codes pay attention to bidi and take responsibility on setting character positions at composition boundary. I'm now modifying my local copy along that line. As soon as I finish it, I'll show you the code and ask your comment. --- Kenichi Handa handa@m17n.org