<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-1570</id>
	<title>Nabble - Emacs - Bidi</title>
	<updated>2009-11-27T20:44:09Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/Emacs---Bidi-f1570.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Emacs---Bidi-f1570.html" />
	<subtitle type="html">Discussion of Emacs support for multi-directional text.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26550727</id>
	<title>Re: Bidi Emacs: R2L paragraphs and the direction of glyph_row</title>
	<published>2009-11-27T20:44:09Z</published>
	<updated>2009-11-27T20:44:09Z</updated>
	<author>
		<name>&quot;Martin J. Dürst&quot;</name>
	</author>
	<content type="html">Hello Eli,
&lt;br&gt;&lt;br&gt;Many thanks for your comments. I very much agree with what you say, 
&lt;br&gt;namely that good display for HTML/XML (and similar stuff) should be at a 
&lt;br&gt;level above the basic bidi support, and that it may be implemented by 
&lt;br&gt;somebody else than you.
&lt;br&gt;&lt;br&gt;Nevertheless, I very much look forward to hear from Gregg (and others) 
&lt;br&gt;about what they see as the current problems with bidi editing (such as 
&lt;br&gt;the issue with carret placement that Gregg mentioned).
&lt;br&gt;&lt;br&gt;Regards, &amp;nbsp; Martin.
&lt;br&gt;&lt;br&gt;On 2009/11/27 21:24, Eli Zaretskii wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt;&amp;gt; Date: Fri, 27 Nov 2009 20:11:47 +0900
&lt;br&gt;&amp;gt;&amp;gt; From: &amp;quot;Martin J. Dürst&amp;quot;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26550727&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;duerst@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; CC: Gregg Reynolds&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26550727&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gar@...&lt;/a&gt;&amp;gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26550727&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26550727&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; On 2009/11/27 1:10, Eli Zaretskii wrote:
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; Date: Thu, 26 Nov 2009 08:58:39 -0600
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; From: Gregg Reynolds&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26550727&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gar@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; It's also a major pain to edit XML in a bidi editor. &amp;nbsp;And I do mean
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; major.
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; Again, an explicit list of main problems would be useful (although I
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; deliberately decided not to handle bidirectional editing for meta
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; documents yet, so this specific class of problems is still a long way
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; from being dealt with).
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; This is a well-known problem. For some more background and some attempt
&lt;br&gt;&amp;gt;&amp;gt; at a solution, please see:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://www.sw.it.aoyama.ac.jp/2005/pub/IUC28-bidi/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.sw.it.aoyama.ac.jp/2005/pub/IUC28-bidi/&lt;/a&gt;&amp;nbsp;and
&lt;br&gt;&amp;gt;&amp;gt; &lt;a href=&quot;http://www.sw.it.aoyama.ac.jp/2008/pub/IUC32-bidi/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.sw.it.aoyama.ac.jp/2008/pub/IUC32-bidi/&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; As I pointed out elsewhere, this class of problems is currently beyond
&lt;br&gt;&amp;gt; the scope of what I'm trying to do in Emacs. &amp;nbsp;That is because the
&lt;br&gt;&amp;gt; display engine basically examines characters one by one, so correct
&lt;br&gt;&amp;gt; display of XML/HTML using just UAX#9 algorithm is impossible, as you
&lt;br&gt;&amp;gt; and others have found out.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I think that support for bidi editing of documents that use markup
&lt;br&gt;&amp;gt; languages should be based on the features that exist as part of the
&lt;br&gt;&amp;gt; markup:&amp;lrm;/&amp;rlm;, the dir= directive etc. &amp;nbsp;Using these, a Lisp
&lt;br&gt;&amp;gt; application should place overlays or maybe text properties on the
&lt;br&gt;&amp;gt; portions of text that need to be reordered. &amp;nbsp;For example, one could
&lt;br&gt;&amp;gt; place an overlay on a portion of the buffer with `display' property
&lt;br&gt;&amp;gt; whose value is the reordered text of that portion (it will have to be
&lt;br&gt;&amp;gt; enclosed in LRO..PDF embedding to avoid the automatic reordering when
&lt;br&gt;&amp;gt; the display string is delivered to the glass). &amp;nbsp;Or we could add a new
&lt;br&gt;&amp;gt; overlay property that would just tell the display engine &amp;quot;reorder this
&lt;br&gt;&amp;gt; part&amp;quot;. &amp;nbsp;Then the display engine will DTRT guided by these overlays and
&lt;br&gt;&amp;gt; text properties.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; However, please note that the above is not something I thought about
&lt;br&gt;&amp;gt; long enough to be convinced that it is the right solution. &amp;nbsp;The only
&lt;br&gt;&amp;gt; thing I convinced myself in at this point is that bidi support for
&lt;br&gt;&amp;gt; markup languages should not be on the basic display engine level,
&lt;br&gt;&amp;gt; which is what I'm currently hacking. &amp;nbsp;Rather, it should use the basic
&lt;br&gt;&amp;gt; reordering capabilities of the display engine in some way, but do some
&lt;br&gt;&amp;gt; additional work on higher levels to implement the equivalent of the
&lt;br&gt;&amp;gt; UAX#9 ``higher protocols''.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; In a discussion with Ken'ichi Handa and Naoto Takahashi in 2005, they
&lt;br&gt;&amp;gt;&amp;gt; pointed out that using bidi marks in overlays should make it possible in
&lt;br&gt;&amp;gt;&amp;gt; bidi emacs to address this problem. Unfortunately, nobody here is
&lt;br&gt;&amp;gt;&amp;gt; familiar enough with emacs lisp to implement this, but I'd be very glad
&lt;br&gt;&amp;gt;&amp;gt; to help somebody with some emacs lisp skills to work on such a project.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks for the offer. &amp;nbsp;I don't know when I will get to those parts.
&lt;br&gt;&amp;gt; For now, text properties and overlays are not yet supported in the
&lt;br&gt;&amp;gt; modified display engine -- that is the very next problem on my agenda.
&lt;br&gt;&amp;gt; When these parts are done, hopefully others could come on board and
&lt;br&gt;&amp;gt; implement markup support on top of that.
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;#-# Martin J. Dürst, Professor, Aoyama Gakuin University
&lt;br&gt;#-# &lt;a href=&quot;http://www.sw.it.aoyama.ac.jp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.sw.it.aoyama.ac.jp&lt;/a&gt;&amp;nbsp; &amp;nbsp;mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26550727&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;duerst@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26550727&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidi-Emacs%3A-R2L-paragraphs-and-the-direction-of-glyph_row-tp25936636p26550727.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26541770</id>
	<title>Re: Bidi Emacs: R2L paragraphs and the direction of	glyph_row</title>
	<published>2009-11-27T04:24:32Z</published>
	<updated>2009-11-27T04:24:32Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&lt;div class='shrinkable-quote'&gt;&amp;gt; Date: Fri, 27 Nov 2009 20:11:47 +0900
&lt;br&gt;&amp;gt; From: &amp;quot;Martin J. Dürst&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26541770&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;duerst@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; CC: Gregg Reynolds &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26541770&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gar@...&lt;/a&gt;&amp;gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26541770&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26541770&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; On 2009/11/27 1:10, Eli Zaretskii wrote:
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; Date: Thu, 26 Nov 2009 08:58:39 -0600
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; From: Gregg Reynolds&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26541770&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gar@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; It's also a major pain to edit XML in a bidi editor. &amp;nbsp;And I do mean
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; major.
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Again, an explicit list of main problems would be useful (although I
&lt;br&gt;&amp;gt; &amp;gt; deliberately decided not to handle bidirectional editing for meta
&lt;br&gt;&amp;gt; &amp;gt; documents yet, so this specific class of problems is still a long way
&lt;br&gt;&amp;gt; &amp;gt; from being dealt with).
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; This is a well-known problem. For some more background and some attempt 
&lt;br&gt;&amp;gt; at a solution, please see:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.sw.it.aoyama.ac.jp/2005/pub/IUC28-bidi/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.sw.it.aoyama.ac.jp/2005/pub/IUC28-bidi/&lt;/a&gt;&amp;nbsp;and
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.sw.it.aoyama.ac.jp/2008/pub/IUC32-bidi/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.sw.it.aoyama.ac.jp/2008/pub/IUC32-bidi/&lt;/a&gt;&lt;/div&gt;&lt;br&gt;Thanks.
&lt;br&gt;&lt;br&gt;As I pointed out elsewhere, this class of problems is currently beyond
&lt;br&gt;the scope of what I'm trying to do in Emacs. &amp;nbsp;That is because the
&lt;br&gt;display engine basically examines characters one by one, so correct
&lt;br&gt;display of XML/HTML using just UAX#9 algorithm is impossible, as you
&lt;br&gt;and others have found out.
&lt;br&gt;&lt;br&gt;I think that support for bidi editing of documents that use markup
&lt;br&gt;languages should be based on the features that exist as part of the
&lt;br&gt;markup: &amp;lrm;/&amp;rlm;, the dir= directive etc. &amp;nbsp;Using these, a Lisp
&lt;br&gt;application should place overlays or maybe text properties on the
&lt;br&gt;portions of text that need to be reordered. &amp;nbsp;For example, one could
&lt;br&gt;place an overlay on a portion of the buffer with `display' property
&lt;br&gt;whose value is the reordered text of that portion (it will have to be
&lt;br&gt;enclosed in LRO..PDF embedding to avoid the automatic reordering when
&lt;br&gt;the display string is delivered to the glass). &amp;nbsp;Or we could add a new
&lt;br&gt;overlay property that would just tell the display engine &amp;quot;reorder this
&lt;br&gt;part&amp;quot;. &amp;nbsp;Then the display engine will DTRT guided by these overlays and
&lt;br&gt;text properties.
&lt;br&gt;&lt;br&gt;However, please note that the above is not something I thought about
&lt;br&gt;long enough to be convinced that it is the right solution. &amp;nbsp;The only
&lt;br&gt;thing I convinced myself in at this point is that bidi support for
&lt;br&gt;markup languages should not be on the basic display engine level,
&lt;br&gt;which is what I'm currently hacking. &amp;nbsp;Rather, it should use the basic
&lt;br&gt;reordering capabilities of the display engine in some way, but do some
&lt;br&gt;additional work on higher levels to implement the equivalent of the
&lt;br&gt;UAX#9 ``higher protocols''.
&lt;br&gt;&lt;br&gt;&amp;gt; In a discussion with Ken'ichi Handa and Naoto Takahashi in 2005, they 
&lt;br&gt;&amp;gt; pointed out that using bidi marks in overlays should make it possible in 
&lt;br&gt;&amp;gt; bidi emacs to address this problem. Unfortunately, nobody here is 
&lt;br&gt;&amp;gt; familiar enough with emacs lisp to implement this, but I'd be very glad 
&lt;br&gt;&amp;gt; to help somebody with some emacs lisp skills to work on such a project.
&lt;br&gt;&lt;br&gt;Thanks for the offer. &amp;nbsp;I don't know when I will get to those parts.
&lt;br&gt;For now, text properties and overlays are not yet supported in the
&lt;br&gt;modified display engine -- that is the very next problem on my agenda.
&lt;br&gt;When these parts are done, hopefully others could come on board and
&lt;br&gt;implement markup support on top of that.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26541770&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidi-Emacs%3A-R2L-paragraphs-and-the-direction-of-glyph_row-tp25936636p26541770.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26541006</id>
	<title>Re: Bidi Emacs: R2L paragraphs and the direction of glyph_row</title>
	<published>2009-11-27T03:11:47Z</published>
	<updated>2009-11-27T03:11:47Z</updated>
	<author>
		<name>&quot;Martin J. Dürst&quot;</name>
	</author>
	<content type="html">Hello Eli, Gregg,
&lt;br&gt;&lt;br&gt;On 2009/11/27 1:10, Eli Zaretskii wrote:
&lt;br&gt;&amp;gt;&amp;gt; Date: Thu, 26 Nov 2009 08:58:39 -0600
&lt;br&gt;&amp;gt;&amp;gt; From: Gregg Reynolds&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26541006&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gar@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;gt;&amp;gt; It's also a major pain to edit XML in a bidi editor. &amp;nbsp;And I do mean
&lt;br&gt;&amp;gt;&amp;gt; major.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Again, an explicit list of main problems would be useful (although I
&lt;br&gt;&amp;gt; deliberately decided not to handle bidirectional editing for meta
&lt;br&gt;&amp;gt; documents yet, so this specific class of problems is still a long way
&lt;br&gt;&amp;gt; from being dealt with).
&lt;br&gt;&lt;br&gt;This is a well-known problem. For some more background and some attempt 
&lt;br&gt;at a solution, please see:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://www.sw.it.aoyama.ac.jp/2005/pub/IUC28-bidi/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.sw.it.aoyama.ac.jp/2005/pub/IUC28-bidi/&lt;/a&gt;&amp;nbsp;and
&lt;br&gt;&lt;a href=&quot;http://www.sw.it.aoyama.ac.jp/2008/pub/IUC32-bidi/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.sw.it.aoyama.ac.jp/2008/pub/IUC32-bidi/&lt;/a&gt;&lt;br&gt;&lt;br&gt;Unfortunately, the test prototype available at
&lt;br&gt;&lt;a href=&quot;http://www.sw.it.aoyama.ac.jp/2008/pub/IUC32-bidi/bidi-source.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.sw.it.aoyama.ac.jp/2008/pub/IUC32-bidi/bidi-source.html&lt;/a&gt;&lt;br&gt;is not very usable currently because the carret jumps around and has to 
&lt;br&gt;be repositioned. That problem has been solved, but I didn't get around 
&lt;br&gt;to make the update publicly available. Anyway, both the simulation and 
&lt;br&gt;the Web-based editor should make it possible to test your problem cases 
&lt;br&gt;and tell us whether our solutions help (we know they aren't perfect; 
&lt;br&gt;there is no such thing as perfect bidi, unfortunately).
&lt;br&gt;&lt;br&gt;Questions and comments are very welcome!
&lt;br&gt;&lt;br&gt;In a discussion with Ken'ichi Handa and Naoto Takahashi in 2005, they 
&lt;br&gt;pointed out that using bidi marks in overlays should make it possible in 
&lt;br&gt;bidi emacs to address this problem. Unfortunately, nobody here is 
&lt;br&gt;familiar enough with emacs lisp to implement this, but I'd be very glad 
&lt;br&gt;to help somebody with some emacs lisp skills to work on such a project.
&lt;br&gt;&lt;br&gt;Regards, &amp;nbsp; &amp;nbsp;Martin.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;#-# Martin J. Dürst, Professor, Aoyama Gakuin University
&lt;br&gt;#-# &lt;a href=&quot;http://www.sw.it.aoyama.ac.jp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.sw.it.aoyama.ac.jp&lt;/a&gt;&amp;nbsp; &amp;nbsp;mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26541006&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;duerst@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26541006&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidi-Emacs%3A-R2L-paragraphs-and-the-direction-of-glyph_row-tp25936636p26541006.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26532392</id>
	<title>Re: Bidi Emacs: R2L paragraphs and the direction of  glyph_row</title>
	<published>2009-11-26T08:10:50Z</published>
	<updated>2009-11-26T08:10:50Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; Date: Thu, 26 Nov 2009 08:58:39 -0600
&lt;br&gt;&amp;gt; From: Gregg Reynolds &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26532392&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;gar@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26532392&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26532392&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I've got lots of complaints about the way most bidi-enabled editors handle
&lt;br&gt;&amp;gt; keyboard and cursor interaction; would a list of specific annoyances, er,
&lt;br&gt;&amp;gt; use-cases be of any use?
&lt;br&gt;&lt;br&gt;Yes, certainly. &amp;nbsp;But please try to describe each annoyance, er,
&lt;br&gt;use-case in enough detail, because most probably people here (myself
&lt;br&gt;included) will not be familiar with many other editors. &amp;nbsp;Thanks in
&lt;br&gt;advance.
&lt;br&gt;&lt;br&gt;&amp;gt; For example, in Mellel (&lt;a href=&quot;http://www.redlers.com/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.redlers.com/&lt;/a&gt;) I've discovered that if an
&lt;br&gt;&amp;gt; RTL document starts with an LTR string, it is impossible to simply insert a
&lt;br&gt;&amp;gt; linefeed in front of that string.
&lt;br&gt;&lt;br&gt;How do you mean ``impossible''? what happens if you try inserting a
&lt;br&gt;newline after going to the beginning of the buffer (with the
&lt;br&gt;equivalent of &amp;quot;M-&amp;lt;&amp;quot; or C-Home)?
&lt;br&gt;&lt;br&gt;&amp;gt; It's also a major pain to edit XML in a bidi editor. &amp;nbsp;And I do mean
&lt;br&gt;&amp;gt; major.
&lt;br&gt;&lt;br&gt;Again, an explicit list of main problems would be useful (although I
&lt;br&gt;deliberately decided not to handle bidirectional editing for meta
&lt;br&gt;documents yet, so this specific class of problems is still a long way
&lt;br&gt;from being dealt with).
&lt;br&gt;&lt;br&gt;Thanks.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26532392&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidi-Emacs%3A-R2L-paragraphs-and-the-direction-of-glyph_row-tp25936636p26532392.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26531797</id>
	<title>Re: Bidi Emacs: R2L paragraphs and the direction of  glyph_row</title>
	<published>2009-11-26T06:58:39Z</published>
	<updated>2009-11-26T06:58:39Z</updated>
	<author>
		<name>Gregg Reynolds</name>
	</author>
	<content type="html">On Sat, Oct 17, 2009 at 3:15 AM, Eli Zaretskii &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26531797&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eliz@...&lt;/a&gt;&amp;gt;&lt;/span&gt; wrote:&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;
This issue is borderline between design and implementation, but the&lt;br&gt;
decision will affect lots of code to be written/changed later, so I&amp;#39;m&lt;br&gt;
posting this here, in case there are some considerations that I&lt;br&gt;
missed.&lt;br&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br&gt;I&amp;#39;ve got lots of complaints about the way most bidi-enabled editors handle keyboard and cursor interaction; would a list of specific annoyances, er, use-cases be of any use?&lt;br&gt;&lt;br&gt;For example, in Mellel (&lt;a href=&quot;http://www.redlers.com/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.redlers.com/&lt;/a&gt;) I&amp;#39;ve discovered that if an RTL document starts with an LTR string, it is impossible to simply insert a linefeed in front of that string.  It&amp;#39;s also a major pain to edit XML in a bidi editor.  And I do mean major.  If emacs could make it easy and natural to perform such operations it would be manna from heaven.&lt;br&gt;
&lt;br&gt;Cheers,&lt;br&gt;&lt;br&gt;Gregg&lt;br&gt;&lt;/div&gt;&lt;/div&gt;
&lt;br /&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26531797&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidi-Emacs%3A-R2L-paragraphs-and-the-direction-of-glyph_row-tp25936636p26531797.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25936636</id>
	<title>Bidi Emacs: R2L paragraphs and the direction of glyph_row</title>
	<published>2009-10-17T02:15:18Z</published>
	<updated>2009-10-17T02:15:18Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">This issue is borderline between design and implementation, but the
&lt;br&gt;decision will affect lots of code to be written/changed later, so I'm
&lt;br&gt;posting this here, in case there are some considerations that I
&lt;br&gt;missed.
&lt;br&gt;&lt;br&gt;Display of paragraphs whose base direction is right-to-left needs to
&lt;br&gt;begin at the right margin of the window, and the empty space at the
&lt;br&gt;end of the line, if any, should extend all the way to the left margin.
&lt;br&gt;&lt;br&gt;By contrast, the terminal-specific back-end (which Emacs uses to
&lt;br&gt;display what's in the glyph matrices) always draws glyphs from left to
&lt;br&gt;right. &amp;nbsp;When the back-end is told that the face should be extended to
&lt;br&gt;the end of the line, it just draws the amount of pixels needed to get
&lt;br&gt;to the margin; the glyph matrix does not tell it how many pixels to
&lt;br&gt;draw. &amp;nbsp;(The text-mode back-end is different, see below.)
&lt;br&gt;&lt;br&gt;To resolve this contradiction, what I plan to do is to introduce a
&lt;br&gt;direction flag into the glyph_row structure. &amp;nbsp;When this flag is
&lt;br&gt;left-to-right, glyphs will start at the lowest address in the
&lt;br&gt;glyph_row-&amp;gt;glyphs[] array and will proceed towards the highest
&lt;br&gt;addresses, and the x coordinate will grow in that direction as well,
&lt;br&gt;as it does today. &amp;nbsp;But when this flag is right-to-left, glyphs will
&lt;br&gt;start at the highest address in glyph_row-&amp;gt;glyphs[], so that the first
&lt;br&gt;glyph is in glyph_row-&amp;gt;glyphs[TEXT_AREA]+glyph_row-&amp;gt;used[TEXT_AREA]-1
&lt;br&gt;and the last glyph is in glyph_row-&amp;gt;glyphs[TEXT_AREA]. &amp;nbsp;The x
&lt;br&gt;coordinate still grows left to right in this case, as it would on the
&lt;br&gt;screen.
&lt;br&gt;&lt;br&gt;IOW, in the the right-to-left case, the glyphs in the glyph_row are
&lt;br&gt;&amp;quot;reversed&amp;quot;. &amp;nbsp;The code which walks glyph rows will need to process such
&lt;br&gt;reversed glyph rows back to front, to keep the rest of the logic
&lt;br&gt;generally intact.
&lt;br&gt;&lt;br&gt;The advantage of this is in the correspondence between the glyph
&lt;br&gt;matrix and what's on the glass. &amp;nbsp;I expect that to minimize changes in
&lt;br&gt;other parts of the code which need to find buffer position that
&lt;br&gt;corresponds to a screen position, or look for glyphs in the matrices
&lt;br&gt;given their screen positions. &amp;nbsp;(The alternative -- to keep glyph rows
&lt;br&gt;in their current left-to-right direction, and reverse them in the
&lt;br&gt;terminal-specific back-end -- sounds less attractive, as it would
&lt;br&gt;require more coding in both the back-ends and in the generic parts of
&lt;br&gt;the display engine.)
&lt;br&gt;&lt;br&gt;This idea of &amp;quot;reversed&amp;quot; glyph rows is already implemented for a
&lt;br&gt;text-mode terminal, and works quite well. &amp;nbsp;Reversing the glyphs in
&lt;br&gt;this case is relatively straightforward, since face extension is
&lt;br&gt;implemented by filling the rest of the line with blanks. &amp;nbsp;After such
&lt;br&gt;filling, reversal is trivial. &amp;nbsp;But for graphics terminals, this is
&lt;br&gt;more complicated, and since I'm not an expert on those back-ends, I
&lt;br&gt;thought I'd ask here if someone sees any reasons why doing the same
&lt;br&gt;would be hard or require many changes in the existing code, even if
&lt;br&gt;that happens only in some very special situations, like displaying
&lt;br&gt;embedded images.
&lt;br&gt;&lt;br&gt;Does someone see any reason why calculating glyph coordinates &amp;quot;in
&lt;br&gt;reverse&amp;quot; or extending the face to the left margin would be hard or
&lt;br&gt;impossible on graphics terminals? &amp;nbsp;Does anyone see problems with the
&lt;br&gt;idea of using &amp;quot;reversed&amp;quot; glyph_row in the display engine?
&lt;br&gt;&lt;br&gt;TIA
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25936636&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidi-Emacs%3A-R2L-paragraphs-and-the-direction-of-glyph_row-tp25936636p25936636.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25861022</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-12T11:39:55Z</published>
	<updated>2009-10-12T11:39:55Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; From: Richard Stallman &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25861022&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rms@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; CC: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25861022&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25861022&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Date: Mon, 12 Oct 2009 06:11:42 -0400
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; It is very important to support the full set of features that Emacs
&lt;br&gt;&amp;gt; offers for controlling paragraphs.
&lt;br&gt;&lt;br&gt;OK, I will add this to my TODO.
&lt;br&gt;&lt;br&gt;Thanks.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25861022&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25861022.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25853332</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-12T03:11:42Z</published>
	<updated>2009-10-12T03:11:42Z</updated>
	<author>
		<name>Richard Stallman</name>
	</author>
	<content type="html">&amp;nbsp; &amp;nbsp; Would it be sufficient to account for any arbitrary amount of
&lt;br&gt;&amp;nbsp; &amp;nbsp; horizontal whitespace between the beginning of the line and the
&lt;br&gt;&amp;nbsp; &amp;nbsp; paragraph regexps?
&lt;br&gt;&lt;br&gt;No, that's not correct. &amp;nbsp;You need to skip whitespace whose width is
&lt;br&gt;the value of `left-margin' and then match the regexp.
&lt;br&gt;(More precisely, you need to skip the amount of space
&lt;br&gt;specified by the value that the function `current-left-margin' would return.)
&lt;br&gt;&lt;br&gt;Looking at the code, I think I was mistaken in what I said about &amp;quot;less
&lt;br&gt;than `left-margin' indentation starts a paragraph&amp;quot;. &amp;nbsp;I think that if
&lt;br&gt;the line doesn't have `left-margin' worth of indentation, then the
&lt;br&gt;paragaph regexps match at the end of the indentation.
&lt;br&gt;&lt;br&gt;Look at the code of `forward-paragraph' to see the paragraph criteria
&lt;br&gt;in full detail. &amp;nbsp;It is very important to support the full set of
&lt;br&gt;features that Emacs offers for controlling paragraphs.
&lt;br&gt;&lt;br&gt;At least, it is important to support the full set when this is
&lt;br&gt;released. &amp;nbsp;I won't say it has to be the very next job you work on.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25853332&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25853332.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25847631</id>
	<title>Re: Re: Bidirectional editing in Emacs -- main design	decisions</title>
	<published>2009-10-11T14:09:34Z</published>
	<updated>2009-10-11T14:09:34Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; Date: Sun, 11 Oct 2009 22:12:54 +0200
&lt;br&gt;&amp;gt; From: Eli Zaretskii &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25847631&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eliz@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25847631&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25847631&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Maybe it will be not hard -- once I make move-to-column,
&lt;br&gt;&amp;gt; current-column, and the rest of indent.c work with bidirectional
&lt;br&gt;&amp;gt; text. &amp;nbsp;Right now, it's badly broken
&lt;br&gt;&lt;br&gt;Broken for a buffer with bidirectional text, I should have said. &amp;nbsp;It
&lt;br&gt;works okay with unidirectional left-to-right text, of course.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25847631&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25847631.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25847141</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-11T13:12:54Z</published>
	<updated>2009-10-11T13:12:54Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; From: Richard Stallman &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25847141&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rms@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; CC: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25847141&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25847141&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Date: Sun, 11 Oct 2009 04:41:22 -0400
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; move-to-left-margin shows what it means to be at the left margin.
&lt;br&gt;&amp;gt; It is a matter of matching the paragraph regexps after the right
&lt;br&gt;&amp;gt; amount of whitespace as specified by the value of `left-margin'.
&lt;br&gt;&lt;br&gt;Would it be sufficient to account for any arbitrary amount of
&lt;br&gt;horizontal whitespace between the beginning of the line and the
&lt;br&gt;paragraph regexps? &amp;nbsp;If so, that is an almost trivial modification of
&lt;br&gt;the code I already have.
&lt;br&gt;&lt;br&gt;My problem was with potentially more complicated situations, since
&lt;br&gt;paragraph regexps may in principle be anything.
&lt;br&gt;&lt;br&gt;I also have issues with a paragraph that is separated from the
&lt;br&gt;previous one by just the amount of indentation, like this:
&lt;br&gt;&lt;br&gt;&amp;nbsp; aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
&lt;br&gt;&amp;nbsp; aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; bbbbbbbbbbbbbbbbbbbbbbbbbbbb
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; bbbbbbbbbbbbbbbbbbbbbbbbbbbb
&lt;br&gt;&lt;br&gt;Are you suggesting that Emacs should recompute the paragraph direction
&lt;br&gt;of the two lines with b's, and the result could be a different base
&lt;br&gt;direction from that used by the two preceding lines with a's? &amp;nbsp;I think
&lt;br&gt;that such direction changes will annoy users of bidirectional scripts.
&lt;br&gt;What are the use-cases where such paragraphs are useful?
&lt;br&gt;&lt;br&gt;&amp;gt; When `left-margin' is nonzero, a line which fails to start with that much
&lt;br&gt;&amp;gt; whitespace also starts a paragraph.
&lt;br&gt;&lt;br&gt;You mean, a line which starts with more indentation, or a line that
&lt;br&gt;starts with less? &amp;nbsp;Like this:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; aaaaaaaaaaaaaaaaaaaaaa
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; aaaaaaaaaaaaaaaaaaaaaa
&lt;br&gt;&amp;nbsp; xxxxxxxxxxxxxxxxxxxxxxxxxx
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; yyyyyyyyyyyyyyyyyyyyyy
&lt;br&gt;&lt;br&gt;Should the &amp;quot;xxx&amp;quot; line be considered a new paragraph?
&lt;br&gt;&lt;br&gt;&amp;gt; To be fully correct, it ought to detect paragraphs correctly when
&lt;br&gt;&amp;gt; `left-margin' is nonzero. &amp;nbsp;I think that won't be hard to do.
&lt;br&gt;&lt;br&gt;Maybe it will be not hard -- once I make move-to-column,
&lt;br&gt;current-column, and the rest of indent.c work with bidirectional
&lt;br&gt;text. &amp;nbsp;Right now, it's badly broken, because it assumes buffer
&lt;br&gt;positions increase linearly with screen positions. &amp;nbsp;Even vertical
&lt;br&gt;cursor motion and C-e does not work correctly, because of that.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25847141&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25847141.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25841625</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-11T01:41:22Z</published>
	<updated>2009-10-11T01:41:22Z</updated>
	<author>
		<name>Richard Stallman</name>
	</author>
	<content type="html">&amp;nbsp; &amp;nbsp; &amp;gt; The only case when the paragraph separator does not begin at the
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;gt; beginning of a line is when the left margin is nonzero.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; I'm not sure I understand the situation you are describing. &amp;nbsp;(The word
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;quot;margin&amp;quot; is too overloaded, even if we confine ourselves to Emacs
&lt;br&gt;&amp;nbsp; &amp;nbsp; parlance alone.) &amp;nbsp;Could you please provide an example of such a
&lt;br&gt;&amp;nbsp; &amp;nbsp; paragraph? &amp;nbsp;Then I could reason about it.
&lt;br&gt;&lt;br&gt;I can't give you an example, but move-to-left-margin shows
&lt;br&gt;what it means to be at the left margin. &amp;nbsp;It is a matter of
&lt;br&gt;matching the paragraph regexps after the right amount of whitespace
&lt;br&gt;as specified by the value of `left-margin'.
&lt;br&gt;&lt;br&gt;When `left-margin' is nonzero, a line which fails to start with that much
&lt;br&gt;whitespace also starts a paragraph.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;gt; Why should these paragraphs be different from other paragraphs
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;gt; with regard to direction of text?
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; They are not &amp;quot;different&amp;quot;, they just follow the base direction of the
&lt;br&gt;&amp;nbsp; &amp;nbsp; preceding paragraph.
&lt;br&gt;&lt;br&gt;To be fully correct, it ought to detect paragraphs correctly when
&lt;br&gt;`left-margin' is nonzero. &amp;nbsp;I think that won't be hard to do.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25841625&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25841625.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25837085</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-10T11:32:10Z</published>
	<updated>2009-10-10T11:32:10Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; From: James Cloos &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25837085&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;cloos@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25837085&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &amp;nbsp;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25837085&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Thanks for posting that. &amp;nbsp;It is a great summary of the concerns and
&lt;br&gt;&amp;gt; needs of an editor when dealing with bidi test.
&lt;br&gt;&lt;br&gt;Thanks, but I think it's just the beginning. &amp;nbsp;There are lots of other
&lt;br&gt;issues to deal with; see, for example, the aspects of search described
&lt;br&gt;by Ehud Karni in this thread.
&lt;br&gt;&lt;br&gt;The hard problem in making these decisions was to become convinced
&lt;br&gt;that all those other issues are reasonably solvable based on these
&lt;br&gt;basic features, without actually solving any of them.
&lt;br&gt;&lt;br&gt;&amp;gt; Of those points, all but #6 are no brainers; your choices are exactly
&lt;br&gt;&amp;gt; what an editor must do.
&lt;br&gt;&lt;br&gt;Thanks for confirming that.
&lt;br&gt;&lt;br&gt;&amp;gt; Point six is an interesting problem; I'm also unaware of any prior
&lt;br&gt;&amp;gt; art. &amp;nbsp;I suspect that in the long term it would be best to note the
&lt;br&gt;&amp;gt; start and end directionality of such chunks of text and set them
&lt;br&gt;&amp;gt; chunk-by-chunk in a manner similar to how glyphs are set in the
&lt;br&gt;&amp;gt; absence of such properties.
&lt;br&gt;&lt;br&gt;I think this is impossible in general, because once text is reordered,
&lt;br&gt;the information needed to plug in additional chunks (the resolved
&lt;br&gt;level of each character) is lost.
&lt;br&gt;&lt;br&gt;Note that it is fairly simple to reorder the text of `display' strings
&lt;br&gt;together with the surrounding text -- you just need to feed the
&lt;br&gt;characters together into the reordering engine. &amp;nbsp;The problem is
&lt;br&gt;elsewhere -- in the code that uses the produced glyphs.
&lt;br&gt;&lt;br&gt;&amp;gt; But in the short term I agree with the choice you outlined.
&lt;br&gt;&lt;br&gt;The future will tell if it was the right decision. &amp;nbsp;Maybe a useful
&lt;br&gt;first step to examining its validity would be to prepare a fairly
&lt;br&gt;complete list of Emacs applications that currently use the `display'
&lt;br&gt;text properties and overlay properties. &amp;nbsp;Given such a list, one could
&lt;br&gt;think of their applicability to bidirectional editing, and how the
&lt;br&gt;strings should be displayed in each context to do what the users
&lt;br&gt;expect.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25837085&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25837085.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25836431</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-10T10:18:37Z</published>
	<updated>2009-10-10T10:18:37Z</updated>
	<author>
		<name>James Cloos-9</name>
	</author>
	<content type="html">&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; &amp;quot;Eli&amp;quot; == Eli Zaretskii &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25836431&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eliz@...&lt;/a&gt;&amp;gt; writes:
&lt;br&gt;&lt;br&gt;Eli&amp;gt; I'm slowly working on adding support for bidirectional editing in Emacs.
&lt;br&gt;&lt;br&gt;Thanks for posting that. &amp;nbsp;It is a great summary of the concerns and
&lt;br&gt;needs of an editor when dealing with bidi test.
&lt;br&gt;&lt;br&gt;To be fair, I should point out before continuing that I do not read any
&lt;br&gt;rtl scripts. &amp;nbsp;My interests deal with fonts and typography and at least
&lt;br&gt;seeing bidi email in its correct visual order, if only to try to learn
&lt;br&gt;some of it.
&lt;br&gt;&lt;br&gt;Eli&amp;gt; 1. Text storage
&lt;br&gt;Eli&amp;gt; 2. Support for Unicode Bidirectional Algorithm
&lt;br&gt;Eli&amp;gt; 3. Bidi formatting codes are retained
&lt;br&gt;Eli&amp;gt; 4. Reordering of text for display
&lt;br&gt;Eli&amp;gt; 5. Visual-order information is volatile
&lt;br&gt;Eli&amp;gt; 6. Reordering of strings from `display' properties
&lt;br&gt;Eli&amp;gt; 7. Paragraph base direction
&lt;br&gt;Eli&amp;gt; 8. User control of visual order
&lt;br&gt;&lt;br&gt;Of those points, all but #6 are no brainers; your choices are exactly
&lt;br&gt;what an editor must do.
&lt;br&gt;&lt;br&gt;Point six is an interesting problem; I'm also unaware of any prior
&lt;br&gt;art. &amp;nbsp;I suspect that in the long term it would be best to note the
&lt;br&gt;start and end directionality of such chunks of text and set them
&lt;br&gt;chunk-by-chunk in a manner similar to how glyphs are set in the
&lt;br&gt;absence of such properties. &amp;nbsp;But in the short term I agree with
&lt;br&gt;the choice you outlined.
&lt;br&gt;&lt;br&gt;-JimC
&lt;br&gt;-- 
&lt;br&gt;James Cloos &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25836431&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;cloos@...&lt;/a&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; OpenPGP: 1024D/ED7DAEA6
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25836431&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25836431.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25835988</id>
	<title>Re: Bidirectional editing in Emacs -- main design	decisions</title>
	<published>2009-10-10T09:38:18Z</published>
	<updated>2009-10-10T09:38:18Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; Date: Sat, 10 Oct 2009 16:57:59 +0200
&lt;br&gt;&amp;gt; From: &amp;quot;Ehud Karni&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25835988&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ehud@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25835988&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25835988&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; On Fri, 09 Oct 2009 23:18:00 Eli Zaretskii wrote:
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Here's what I can tell about the subject (bidi display) at this point
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; In general I agree with your decisions.
&lt;br&gt;&lt;br&gt;Well, you brought up many of them (thanks!), so it isn't surprising ;-)
&lt;br&gt;&lt;br&gt;&amp;gt; The search has many problems but this should not influence your bidi
&lt;br&gt;&amp;gt; reordering. The changes to various search functions can be done later.
&lt;br&gt;&lt;br&gt;Agreed.
&lt;br&gt;&lt;br&gt;&amp;gt; The user ALWAYS search for the visual text s/he sees (S/he never knows
&lt;br&gt;&amp;gt; the logical order unless she visits the file literally).
&lt;br&gt;&lt;br&gt;She will look for visual text, but she will type the text she looks
&lt;br&gt;for in the logical (reading) order, not in the visual order, where
&lt;br&gt;characters are reversed and/or reshuffled.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; The problems are caused by many reasons:
&lt;br&gt;&amp;gt; &amp;nbsp; 1. Different logical inputs, even without formatting characters, can
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;result in the same visual output.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;e.g. Logical Hebrew text + a number in LTR reading order, the
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;number may be before or after the Hebrew text, but in the visual
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;output the number will always be after (to the left of) the text.
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;Logical &amp;quot;123 HEBREW 456&amp;quot; appears as &amp;quot;123 456 WERBEH&amp;quot;.
&lt;br&gt;&amp;gt; &amp;nbsp; 2. Formatting characters are not seen and should not be searched.
&lt;br&gt;&amp;gt; &amp;nbsp; 3. The visual appearance of the searched string may be different from
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;what it will match. &amp;nbsp;e.g. The search for logical &amp;quot;HEBREW 3.&amp;quot; in
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;RTL reading order will appear as &amp;quot;.3 WERBEH&amp;quot; but will match
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;also something like logical &amp;quot;HEBREW 3.14159&amp;quot; which its visual
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;appearance is &amp;quot;3.14159 WERBEH&amp;quot;. This may be what the user wants
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;but it may also disturb her because she really wants to find only
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;(visual) &amp;quot;.3 WERBEH&amp;quot;.
&lt;/div&gt;&lt;br&gt;All of these are valid and important considerations, and the search
&lt;br&gt;commands and primitives will have to deal with them, of course.
&lt;br&gt;There's also the issue of ``final'' letters in Hebrew and much more
&lt;br&gt;complex similar issues in Arabic, etc. &amp;nbsp;I hope enough
&lt;br&gt;application-level Emacs programmers will come aboard and handle all
&lt;br&gt;this, because otherwise these scripts will never be supported well
&lt;br&gt;enough in Emacs.
&lt;br&gt;&lt;br&gt;However, taking care of this is still quite far in the future. &amp;nbsp;My
&lt;br&gt;main difficulty in making these decisions was to convince myself that,
&lt;br&gt;while none of these problems are trivial to solve and their solutions
&lt;br&gt;are not even known yet in detail, at least not to me, they are all
&lt;br&gt;_solvable_in_principle_ using just the logical-order text and the
&lt;br&gt;reordering engine (which was designed to allow it to be used by code
&lt;br&gt;other than just the redisplay iterator, so that it's easy to write a
&lt;br&gt;Lisp primitive that takes a logical-order string and returns its
&lt;br&gt;visual-order variant). &amp;nbsp;Comments that question or contradict this
&lt;br&gt;conclusion are what I'm seeking now, because changing these decisions
&lt;br&gt;further down the road may be very difficult, to say nothing of the
&lt;br&gt;wasted effort.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;There is also a technical question, how Emacs will show the found
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;string which is not connected as in the &amp;quot;3.14159 WERBEH&amp;quot; above.
&lt;br&gt;&lt;br&gt;I didn't yet adapt support for faces to bidi display. &amp;nbsp;However, my
&lt;br&gt;plan is to make it so that each character produced by the bidi
&lt;br&gt;iterator gets the correct face, like it does today, and faces are (and
&lt;br&gt;will be in the future) set in the logical order of buffer positions.
&lt;br&gt;So, in your example, the characters underlined below will have the
&lt;br&gt;`isearch' face:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 3.14159 WERBEH
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; -- &amp;nbsp; &amp;nbsp; &amp;nbsp;------
&lt;br&gt;&lt;br&gt;(you were saying that the search string is &amp;quot;.3 WERBEH&amp;quot;). &amp;nbsp;Yes, this
&lt;br&gt;shows as disconnected. &amp;nbsp;But other GUI applications do it that way, so
&lt;br&gt;I think the user will expect this behavior.
&lt;br&gt;&lt;br&gt;&amp;gt; As a minimum adjustment, I think the search must ignore the formatting
&lt;br&gt;&amp;gt; characters.
&lt;br&gt;&lt;br&gt;Yes, of course. &amp;nbsp;At least by default, with an option to not ignore
&lt;br&gt;them.
&lt;br&gt;&lt;br&gt;&amp;gt; Do you intend to support all the explicit formatting characters (LRO is
&lt;br&gt;&amp;gt; specially important as it allows to store visual strings as is) or just
&lt;br&gt;&amp;gt; the implicit (and more used) LRM and RLM ?
&lt;br&gt;&lt;br&gt;All of them. &amp;nbsp;They are already supported in the code that I'm using
&lt;br&gt;now. &amp;nbsp;Like I said, Emacs will support the full set of features
&lt;br&gt;described by UAX#9.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;This design kills two birds: (a) it produces text that is compliant
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;with other applications, and will display the same as in Emacs, and
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;(b) it avoids the need to invent yet another Emacs infrastructure
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;feature to keep information such as paragraph direction outside of
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;the text itself.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; While you can store the LRM and RLM in ISO-8859-8 encoding, there is no
&lt;br&gt;&amp;gt; way to store the the other formatting characters.
&lt;br&gt;&lt;br&gt;UAX#9 recommends to use LRM and RLM, in preference to the other codes,
&lt;br&gt;for this very reason. &amp;nbsp;Users who will want to use the other codes (in
&lt;br&gt;the rare cases where they are necessary), will have to encode text in
&lt;br&gt;UTF-8. &amp;nbsp;I don't see this as a serious problem, though: unlike several
&lt;br&gt;years ago, when this issue was discussed at length on emacs-bidi, the
&lt;br&gt;number of applications supporting UTF-8 is very large today. &amp;nbsp;Heck,
&lt;br&gt;even Notepad groks it nowadays!
&lt;br&gt;&lt;br&gt;&amp;gt; I found an editor that support the all the formatting characters, YODIT
&lt;br&gt;&amp;gt; (&lt;a href=&quot;http://www.yudit.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.yudit.org/&lt;/a&gt;) it is GPLed, may be you can use it.
&lt;br&gt;&lt;br&gt;Thanks, I had it installed already.
&lt;br&gt;&lt;br&gt;&amp;gt; The W3C recommend not to use explicit formatting characters (i.e.
&lt;br&gt;&amp;gt; RLO/LRO/RLE/LRE/PDF) and instead to use markup (see
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.w3.org/International/questions/qa-bidi-controls&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.w3.org/International/questions/qa-bidi-controls&lt;/a&gt;&amp;nbsp;,
&lt;br&gt;&amp;gt; specially the &amp;quot;reasons&amp;quot; section).
&lt;br&gt;&lt;br&gt;Yes, I know. &amp;nbsp;The obsession of W3C with markup is well known ;-) &amp;nbsp;But
&lt;br&gt;Emacs is first and foremost a _text_editor_, so it doesn't make sense
&lt;br&gt;to me to force users to use markup just to be able to read or write
&lt;br&gt;bidirectional text. &amp;nbsp;I also believe that converting text that uses
&lt;br&gt;Unicode formatting codes into markup is not such a hard job, and
&lt;br&gt;someone will surely come up soon enough with an Emacs function to do
&lt;br&gt;that.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25835988&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25835988.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25835682</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-10T09:06:47Z</published>
	<updated>2009-10-10T09:06:47Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; Date: Sat, 10 Oct 2009 23:13:48 +0800
&lt;br&gt;&amp;gt; From: Jason Rumney &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25835682&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jasonr@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; CC: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25835682&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25835682&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Eli Zaretskii wrote:
&lt;br&gt;&amp;gt; &amp;gt; 4. Reordering of text for display
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Does the function font-shape-gstring help with fitting this in?
&lt;br&gt;&lt;br&gt;I'm sorry to say that I don't understand what it does. &amp;nbsp;If you can
&lt;br&gt;explain, or give me an educational example to play with, maybe I will
&lt;br&gt;be able to answer your question, my profound ignorance of GUI
&lt;br&gt;rendering notwithstanding.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;gt; 8. User control of visual order
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;I decided it was unjustified to deviate from UAX#9. &amp;nbsp;Its algorithm
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;already provides the solution to this problem: users can always
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;control the visual order by inserting special formatting codes at
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;strategic places.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Couldn't Emacs by default use the clever heuristics to decide when to 
&lt;br&gt;&amp;gt; automatically insert the special formatting codes? It would have to be 
&lt;br&gt;&amp;gt; optional and undoable of course, because heuristics are never perfect, 
&lt;br&gt;&amp;gt; but it seems to me as a naive non-speaker of RTL languages that to DWIM 
&lt;br&gt;&amp;gt; in these edge cases is the right behaviour.
&lt;/div&gt;&lt;br&gt;I agree: if it's possible to DWIM automatically, we should. &amp;nbsp;But you
&lt;br&gt;are talking about higher levels than where I am right now. &amp;nbsp;For my
&lt;br&gt;purposes, it was good enough to decide that any such clever heuristics
&lt;br&gt;will eventually just add or remove formatting codes, and that no other
&lt;br&gt;infrastructure features are needed to support this.
&lt;br&gt;&lt;br&gt;&amp;gt; Also you mention several times that the special direction change codes 
&lt;br&gt;&amp;gt; are not displayed, but there should be an option to display them IMHO, 
&lt;br&gt;&amp;gt; (perhaps part of whitespace.el) as users may need to distinguish between 
&lt;br&gt;&amp;gt; explicit direction changes and implicit ones in some circumstances.
&lt;br&gt;&lt;br&gt;Yes, that's a very important feature, of course. &amp;nbsp;Which is why I
&lt;br&gt;tried (but obviously failed, since you are the second person asking
&lt;br&gt;the same) to tell that it will and must be supported:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;In addition, being able to show these formatting codes to the user
&lt;br&gt;&amp;nbsp; &amp;nbsp;is a valuable feature, because the way reordered text looks might
&lt;br&gt;&amp;nbsp; &amp;nbsp;not be otherwise understood or changed easily.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25835682&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25835682.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25835163</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-10T07:57:59Z</published>
	<updated>2009-10-10T07:57:59Z</updated>
	<author>
		<name>Ehud Karni</name>
	</author>
	<content type="html">On Fri, 09 Oct 2009 23:18:00 Eli Zaretskii wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Here's what I can tell about the subject (bidi display) at this point
&lt;br&gt;&lt;br&gt;In general I agree with your decisions.
&lt;br&gt;&lt;br&gt;&amp;gt; 1. Text storage
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Bidirectional text in Emacs buffers and strings is stored in strict
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;logical order (a.k.a. &amp;quot;reading order&amp;quot;). &amp;nbsp;This is how most (if not
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;all) other implementations handle bidirectional text. &amp;nbsp;The
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;advantage of this is that file and process I/O is trivial, as well
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;as text search. &amp;nbsp;[snip]
&lt;br&gt;&lt;br&gt;The search has many problems but this should not influence your bidi
&lt;br&gt;reordering. The changes to various search functions can be done later.
&lt;br&gt;&lt;br&gt;The user ALWAYS search for the visual text s/he sees (S/he never knows
&lt;br&gt;the logical order unless she visits the file literally).
&lt;br&gt;&lt;br&gt;The problems are caused by many reasons:
&lt;br&gt;&amp;nbsp; 1. Different logical inputs, even without formatting characters, can
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;result in the same visual output.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;e.g. Logical Hebrew text + a number in LTR reading order, the
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;number may be before or after the Hebrew text, but in the visual
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;output the number will always be after (to the left of) the text.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Logical &amp;quot;123 HEBREW 456&amp;quot; appears as &amp;quot;123 456 WERBEH&amp;quot;.
&lt;br&gt;&amp;nbsp; 2. Formatting characters are not seen and should not be searched.
&lt;br&gt;&amp;nbsp; 3. The visual appearance of the searched string may be different from
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;what it will match. &amp;nbsp;e.g. The search for logical &amp;quot;HEBREW 3.&amp;quot; in
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;RTL reading order will appear as &amp;quot;.3 WERBEH&amp;quot; but will match
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;also something like logical &amp;quot;HEBREW 3.14159&amp;quot; which its visual
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;appearance is &amp;quot;3.14159 WERBEH&amp;quot;. This may be what the user wants
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;but it may also disturb her because she really wants to find only
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;(visual) &amp;quot;.3 WERBEH&amp;quot;.
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;There is also a technical question, how Emacs will show the found
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;string which is not connected as in the &amp;quot;3.14159 WERBEH&amp;quot; above.
&lt;br&gt;&lt;br&gt;As a minimum adjustment, I think the search must ignore the formatting
&lt;br&gt;characters. An option to show (or operate, in search &amp; replace) only on
&lt;br&gt;found matches that are also the same visually is recommended.
&lt;br&gt;&lt;br&gt;&amp;gt; 3. Bidi formatting codes are retained
&lt;br&gt;&lt;br&gt;Agreed, but see my comment on search.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; 7. Paragraph base direction
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;There is a buffer-specific variable `paragraph-direction' that
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;allows to override this dynamic detection of the direction of each
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;paragraph, and force a certain base direction on all paragraphs in
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;the buffer. &amp;nbsp;I expect, for example, each major mode for a
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;programming language to force the left-to-right paragraph
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;direction, because programming languages are written left to right,
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;and right-to-left scripts appear in such buffers only in strings
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;embedded in the program or in comments.
&lt;/div&gt;&lt;br&gt;I think a better name is `bidi-paragraphs-direction' or even
&lt;br&gt;`bidi-paragraphs-reading-direction'. Note the `s' in paragraphs,
&lt;br&gt;because it is influence all the paragraphs in the buffer.
&lt;br&gt;&lt;br&gt;There should be a key to toggle this variable. It will very
&lt;br&gt;useful for the minibuffer.
&lt;br&gt;&lt;br&gt;&amp;gt; 8. User control of visual order
&lt;br&gt;&lt;br&gt;Do you intend to support all the explicit formatting characters (LRO is
&lt;br&gt;specially important as it allows to store visual strings as is) or just
&lt;br&gt;the implicit (and more used) LRM and RLM ?
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;This design kills two birds: (a) it produces text that is compliant
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;with other applications, and will display the same as in Emacs, and
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;(b) it avoids the need to invent yet another Emacs infrastructure
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;feature to keep information such as paragraph direction outside of
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;the text itself.
&lt;br&gt;&lt;br&gt;While you can store the LRM and RLM in ISO-8859-8 encoding, there is no
&lt;br&gt;way to store the the other formatting characters.
&lt;br&gt;&lt;br&gt;&amp;gt; That is all for now. &amp;nbsp;If you have comments or questions, you are
&lt;br&gt;&amp;gt; welcome to voice them.
&lt;br&gt;&lt;br&gt;I found an editor that support the all the formatting characters, YODIT
&lt;br&gt;(&lt;a href=&quot;http://www.yudit.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.yudit.org/&lt;/a&gt;) it is GPLed, may be you can use it.
&lt;br&gt;&lt;br&gt;The W3C recommend not to use explicit formatting characters (i.e.
&lt;br&gt;RLO/LRO/RLE/LRE/PDF) and instead to use markup (see
&lt;br&gt;&lt;a href=&quot;http://www.w3.org/International/questions/qa-bidi-controls&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.w3.org/International/questions/qa-bidi-controls&lt;/a&gt;&amp;nbsp;,
&lt;br&gt;specially the &amp;quot;reasons&amp;quot; section).
&lt;br&gt;&lt;br&gt;Ehud.
&lt;br&gt;&lt;br&gt;&lt;br&gt;--
&lt;br&gt;&amp;nbsp;Ehud Karni &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Tel: +972-3-7966-561 &amp;nbsp;/&amp;quot;\
&lt;br&gt;&amp;nbsp;Mivtach - Simon &amp;nbsp; &amp;nbsp; &amp;nbsp;Fax: +972-3-7976-561 &amp;nbsp;\ / &amp;nbsp;ASCII Ribbon Campaign
&lt;br&gt;&amp;nbsp;Insurance agencies &amp;nbsp; (USA) voice mail and &amp;nbsp; X &amp;nbsp; Against &amp;nbsp; HTML &amp;nbsp; Mail
&lt;br&gt;&amp;nbsp;&lt;a href=&quot;http://www.mvs.co.il&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.mvs.co.il&lt;/a&gt;&amp;nbsp; FAX: &amp;nbsp;1-815-5509341 &amp;nbsp;/ \
&lt;br&gt;&amp;nbsp;GnuPG: 98EA398D &amp;lt;&lt;a href=&quot;http://www.keyserver.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.keyserver.net/&lt;/a&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Better Safe Than Sorry
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25835163&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25835163.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25834467</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-10T07:05:34Z</published>
	<updated>2009-10-10T07:05:34Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&lt;div class='shrinkable-quote'&gt;&amp;gt; From: Sascha Wilde &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25834467&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wilde@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25834467&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &amp;nbsp;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25834467&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Date: Sat, 10 Oct 2009 15:44:19 +0200
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Eli Zaretskii &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25834467&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eliz@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; &amp;gt; 8. User control of visual order
&lt;br&gt;&amp;gt; [...]
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;Emacs could
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;have a command called, say, `make-paragraph-left-to-right' that did
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp;its job simply by inserting LRM at the beginning of the paragraph.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I would suggest that Emacs should also have a way to visualize the
&lt;br&gt;&amp;gt; otherwise invisible text direction marks so that:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; - it becomes transparent to the user whether the direction of an
&lt;br&gt;&amp;gt; &amp;nbsp; specific portion of the text is explicit or implicit defined
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; - the user is provided with a simple way to remove the marks in case he
&lt;br&gt;&amp;gt; &amp;nbsp; wants to. &amp;nbsp;(By simply deleting them the way he would do with any other
&lt;br&gt;&amp;gt; &amp;nbsp; regular character.)
&lt;/div&gt;&lt;br&gt;Yes. &amp;nbsp;That's what this part of my longish message was trying to say:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;In addition, being able to show these formatting codes to the user
&lt;br&gt;&amp;nbsp; &amp;nbsp;is a valuable feature, because the way reordered text looks might
&lt;br&gt;&amp;nbsp; &amp;nbsp;not be otherwise understood or changed easily.
&lt;br&gt;&lt;br&gt;The &amp;quot;direction marks&amp;quot; you mention are the &amp;quot;formatting codes&amp;quot; I wrote
&lt;br&gt;about.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25834467&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25834467.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25833269</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-10T04:36:38Z</published>
	<updated>2009-10-10T04:36:38Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&lt;div class='shrinkable-quote'&gt;&amp;gt; From: Richard Stallman &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25833269&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;rms@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; CC: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25833269&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25833269&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Date: Sat, 10 Oct 2009 05:16:58 -0400
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; The reason for this deliberate deviation from the letter of Emacs
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; definition of a paragraph are complicated, but the upshot is that from
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; the user point of view, it does not make sense to change paragraph
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; direction if the paragraph separator does not begin at the beginning
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; of a line.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; The only case when the paragraph separator does not begin at the
&lt;br&gt;&amp;gt; beginning of a line is when the left margin is nonzero.
&lt;/div&gt;&lt;br&gt;I'm not sure I understand the situation you are describing. &amp;nbsp;(The word
&lt;br&gt;&amp;quot;margin&amp;quot; is too overloaded, even if we confine ourselves to Emacs
&lt;br&gt;parlance alone.) &amp;nbsp;Could you please provide an example of such a
&lt;br&gt;paragraph? &amp;nbsp;Then I could reason about it.
&lt;br&gt;&lt;br&gt;&amp;gt; Why should these paragraphs be different from other paragraphs
&lt;br&gt;&amp;gt; with regard to direction of text?
&lt;br&gt;&lt;br&gt;They are not &amp;quot;different&amp;quot;, they just follow the base direction of the
&lt;br&gt;preceding paragraph.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25833269&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25833269.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25832403</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-10T02:16:58Z</published>
	<updated>2009-10-10T02:16:58Z</updated>
	<author>
		<name>Richard Stallman</name>
	</author>
	<content type="html">&amp;nbsp; &amp;nbsp; The reason for this deliberate deviation from the letter of Emacs
&lt;br&gt;&amp;nbsp; &amp;nbsp; definition of a paragraph are complicated, but the upshot is that from
&lt;br&gt;&amp;nbsp; &amp;nbsp; the user point of view, it does not make sense to change paragraph
&lt;br&gt;&amp;nbsp; &amp;nbsp; direction if the paragraph separator does not begin at the beginning
&lt;br&gt;&amp;nbsp; &amp;nbsp; of a line.
&lt;br&gt;&lt;br&gt;The only case when the paragraph separator does not begin at the
&lt;br&gt;beginning of a line is when the left margin is nonzero.
&lt;br&gt;&lt;br&gt;Why should these paragraphs be different from other paragraphs
&lt;br&gt;with regard to direction of text?
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; As another deviation from the definition of a paragraph, text that
&lt;br&gt;&amp;nbsp; &amp;nbsp; matches `paragraph-separate' is given the same direction as the
&lt;br&gt;&amp;nbsp; &amp;nbsp; preceding paragraph. &amp;nbsp;(By contrast, Emacs generally does not consider
&lt;br&gt;&amp;nbsp; &amp;nbsp; `paragraph-separate' as part of any paragraph.)
&lt;br&gt;&lt;br&gt;I don't think that conflicts at all with the normal definition
&lt;br&gt;of paragraphs. &amp;nbsp;The separator isn't part of the paragraph,
&lt;br&gt;but its reading direction needs to be determined somehow.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25832403&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25832403.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25832043</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-10T01:18:59Z</published>
	<updated>2009-10-10T01:18:59Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&lt;div class='shrinkable-quote'&gt;&amp;gt; From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25832043&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;joakim@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25832043&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25832043&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Date: Sat, 10 Oct 2009 09:28:19 +0200
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Eli Zaretskii &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25832043&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eliz@...&lt;/a&gt;&amp;gt; writes:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25832043&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;joakim@...&lt;/a&gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25832043&amp;i=5&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25832043&amp;i=6&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; Date: Sat, 10 Oct 2009 00:42:39 +0200
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; Presumably I will also need to tell the widget to render its own text in
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; bidi mode. 
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; By itself, or by using Emacs facilities?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; They are gtk widgets. I havent looked at it closely, but I presume you
&lt;br&gt;&amp;gt; tell the gtk widgets which locale to render text in.
&lt;/div&gt;&lt;br&gt;Actually, I'd expect gtk widgets to do this automatically, no matter
&lt;br&gt;in what locale. &amp;nbsp;The text it renders should supply the hint.
&lt;br&gt;&lt;br&gt;&amp;gt; So, by itself, yes.
&lt;br&gt;&lt;br&gt;You can do that, Emacs won't care.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25832043&amp;i=7&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25832043.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25831804</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-10T00:08:54Z</published>
	<updated>2009-10-10T00:08:54Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25831804&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;joakim@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25831804&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25831804&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Date: Sat, 10 Oct 2009 00:42:39 +0200
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Presumably I will also need to tell the widget to render its own text in
&lt;br&gt;&amp;gt; bidi mode. 
&lt;br&gt;&lt;br&gt;By itself, or by using Emacs facilities?
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25831804&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25831804.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25828981</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-09T15:41:51Z</published>
	<updated>2009-10-09T15:41:51Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; Date: Fri, 09 Oct 2009 23:18:00 +0200
&lt;br&gt;&amp;gt; From: Eli Zaretskii &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25828981&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;eliz@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cc: 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;So I decided to use such a higher protocol -- namely,
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;the Emacs definition of a paragraph, as determined by the
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;`paragraph-start' and `paragraph-separate' regexps.
&lt;br&gt;&lt;br&gt;A small, but significant correction to this: these two regexps are
&lt;br&gt;looked for anchored at line beginning.
&lt;br&gt;&lt;br&gt;The reason for this deliberate deviation from the letter of Emacs
&lt;br&gt;definition of a paragraph are complicated, but the upshot is that from
&lt;br&gt;the user point of view, it does not make sense to change paragraph
&lt;br&gt;direction if the paragraph separator does not begin at the beginning
&lt;br&gt;of a line.
&lt;br&gt;&lt;br&gt;As another deviation from the definition of a paragraph, text that
&lt;br&gt;matches `paragraph-separate' is given the same direction as the
&lt;br&gt;preceding paragraph. &amp;nbsp;(By contrast, Emacs generally does not consider
&lt;br&gt;`paragraph-separate' as part of any paragraph.)
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25828981&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25828981.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25828838</id>
	<title>Re: Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-09T15:29:24Z</published>
	<updated>2009-10-09T15:29:24Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">&amp;gt; From: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25828838&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;joakim@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25828838&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-devel@...&lt;/a&gt;, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25828838&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Date: Fri, 09 Oct 2009 23:55:19 +0200
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; It works mostly the same as embedding images. From what youre
&lt;br&gt;&amp;gt; writing below it sounds like the display of images will work as
&lt;br&gt;&amp;gt; before, therefore my patch will apply, hopefully nicely, on top of
&lt;br&gt;&amp;gt; bidi. Correct?
&lt;br&gt;&lt;br&gt;Correct. &amp;nbsp;Images and any other objects will be reordered according to
&lt;br&gt;UAX#9, and as a single entity. &amp;nbsp;IOW, imagine that instead of the
&lt;br&gt;embedded widget the buffer has a single character U+FFFC (OBJECT
&lt;br&gt;REPLACEMENT CHARACTER). &amp;nbsp;The reordering code will treat the embedded
&lt;br&gt;widget as it would treat that character. &amp;nbsp;That means, in particular,
&lt;br&gt;that if the widget is embedded in text written in some right-to-left
&lt;br&gt;script, the text that precedes the widget will be on the right of the
&lt;br&gt;widget, and text that follows it will be on the left.
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25828838&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25828838.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-25828061</id>
	<title>Bidirectional editing in Emacs -- main design decisions</title>
	<published>2009-10-09T14:18:00Z</published>
	<updated>2009-10-09T14:18:00Z</updated>
	<author>
		<name>Eli Zaretskii</name>
	</author>
	<content type="html">As some of you know, I'm slowly working on adding support for
&lt;br&gt;bidirectional editing in Emacs. &amp;nbsp;(Before you ask: the code is not
&lt;br&gt;publicly available yet, and won't be until Emacs switches to bzr as
&lt;br&gt;its main VCS.)
&lt;br&gt;&lt;br&gt;While there's a lot of turf to be covered yet, I thought I'd publish
&lt;br&gt;the main design decisions up to this point. &amp;nbsp;Many of these decisions
&lt;br&gt;were discussed at length years ago on emacs-bidi mailing list, and
&lt;br&gt;since then I also talked them over in private email with a few people.
&lt;br&gt;Other decisions were made recently, as I went about changing the
&lt;br&gt;display engine.
&lt;br&gt;&lt;br&gt;My goal, and the main drive behind these design decisions was to
&lt;br&gt;preserve as much as possible the basic assumptions and design
&lt;br&gt;principles of the current Emacs display engine. &amp;nbsp;This is not just
&lt;br&gt;opportunism; I firmly believe that any other way would mean a total
&lt;br&gt;redesign and rewrite of the display engine, which is something we want
&lt;br&gt;to avoid. &amp;nbsp;Personally, if such a redesign would be necessary, I
&lt;br&gt;couldn't have participated in that endeavor, except as advisor.
&lt;br&gt;&lt;br&gt;With that preamble out of my way, here's what I can tell about the
&lt;br&gt;subject at this point:
&lt;br&gt;&lt;br&gt;1. Text storage
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Bidirectional text in Emacs buffers and strings is stored in strict
&lt;br&gt;&amp;nbsp; &amp;nbsp;logical order (a.k.a. &amp;quot;reading order&amp;quot;). &amp;nbsp;This is how most (if not
&lt;br&gt;&amp;nbsp; &amp;nbsp;all) other implementations handle bidirectional text. &amp;nbsp;The
&lt;br&gt;&amp;nbsp; &amp;nbsp;advantage of this is that file and process I/O is trivial, as well
&lt;br&gt;&amp;nbsp; &amp;nbsp;as text search. &amp;nbsp;The disadvantage is that text needs to be
&lt;br&gt;&amp;nbsp; &amp;nbsp;reordered for display (see below) and also for sending to any other
&lt;br&gt;&amp;nbsp; &amp;nbsp;visual-order stream, such as a printer or a file in visual-order
&lt;br&gt;&amp;nbsp; &amp;nbsp;encoding.
&lt;br&gt;&lt;br&gt;2. Support for Unicode Bidirectional Algorithm
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;The Unicode Bidirectional Algorithm, described in Annex 9 of the
&lt;br&gt;&amp;nbsp; &amp;nbsp;Unicode Standard (a.k.a. UAX#9, see &lt;a href=&quot;http://www.unicode.org/reports/tr9/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.unicode.org/reports/tr9/&lt;/a&gt;),
&lt;br&gt;&amp;nbsp; &amp;nbsp;specifies how to reorder bidirectional text from logical to visual
&lt;br&gt;&amp;nbsp; &amp;nbsp;order. &amp;nbsp;Emacs will belong to the so-called &amp;quot;Full Bidirectionality&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp;class of applications, which include support for both implicit
&lt;br&gt;&amp;nbsp; &amp;nbsp;bidirectional reordering and explicit directional embedding codes
&lt;br&gt;&amp;nbsp; &amp;nbsp;that allow to override the implicit reordering. &amp;nbsp;This means that
&lt;br&gt;&amp;nbsp; &amp;nbsp;Emacs supports the entire spectrum of Unicode character properties
&lt;br&gt;&amp;nbsp; &amp;nbsp;and special codes relevant to bidirectional text.
&lt;br&gt;&lt;br&gt;3. Bidi formatting codes are retained
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;At some point in the reordering described by UAX#9, the various
&lt;br&gt;&amp;nbsp; &amp;nbsp;formatting codes are to be removed from the text, once they've
&lt;br&gt;&amp;nbsp; &amp;nbsp;performed their role of forcing the order of characters for
&lt;br&gt;&amp;nbsp; &amp;nbsp;display, because they are not supposed to be visible on display.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Contrary to this, Emacs does not remove these formatting codes, it
&lt;br&gt;&amp;nbsp; &amp;nbsp;just behaves as if they are not there. (This behavior is
&lt;br&gt;&amp;nbsp; &amp;nbsp;acknowledged by UAX#9 under &amp;quot;Retaining Format Codes&amp;quot; clause, so
&lt;br&gt;&amp;nbsp; &amp;nbsp;Emacs does not break conformance here.) &amp;nbsp;This is primarily because
&lt;br&gt;&amp;nbsp; &amp;nbsp;Emacs must preserve the text that was not edited; in particular,
&lt;br&gt;&amp;nbsp; &amp;nbsp;visiting a file and then saving it to a different file without
&lt;br&gt;&amp;nbsp; &amp;nbsp;changing anything must produce the same byte stream as the original
&lt;br&gt;&amp;nbsp; &amp;nbsp;file, even if the formatting codes were part of the original file.
&lt;br&gt;&amp;nbsp; &amp;nbsp;In addition, being able to show these formatting codes to the user
&lt;br&gt;&amp;nbsp; &amp;nbsp;is a valuable feature, because the way reordered text looks might
&lt;br&gt;&amp;nbsp; &amp;nbsp;not be otherwise understood or changed easily.
&lt;br&gt;&lt;br&gt;4. Reordering of text for display
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Reordering for display happens as part of Emacs redisplay. &amp;nbsp;In a
&lt;br&gt;&amp;nbsp; &amp;nbsp;nutshell, the current unidirectional redisplay code walks through
&lt;br&gt;&amp;nbsp; &amp;nbsp;buffer text and considers each character in turn. &amp;nbsp;After each
&lt;br&gt;&amp;nbsp; &amp;nbsp;character is processed and translated into a `struct glyph', which
&lt;br&gt;&amp;nbsp; &amp;nbsp;includes all the information needed for displaying that character,
&lt;br&gt;&amp;nbsp; &amp;nbsp;the iterator's position is incremented to the next character.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;In the bidi Emacs, this _linear_ iteration through the buffer is
&lt;br&gt;&amp;nbsp; &amp;nbsp;replaced with a _non-linear_ one, whereby instead of incrementing
&lt;br&gt;&amp;nbsp; &amp;nbsp;buffer position, a function is called to return the next position
&lt;br&gt;&amp;nbsp; &amp;nbsp;in the visual order. &amp;nbsp;Whatever position it returns is processed
&lt;br&gt;&amp;nbsp; &amp;nbsp;next into a `struct glyph'. &amp;nbsp;The rest of the code that produces
&lt;br&gt;&amp;nbsp; &amp;nbsp;&amp;quot;glyph matrices&amp;quot; (data structures used to decide which parts of the
&lt;br&gt;&amp;nbsp; &amp;nbsp;screen need to be redrawn) is largely ignorant of the
&lt;br&gt;&amp;nbsp; &amp;nbsp;bidirectionality of the text. &amp;nbsp;Of course, parts of the display
&lt;br&gt;&amp;nbsp; &amp;nbsp;engine that manipulate the glyph matrices directly and assume that
&lt;br&gt;&amp;nbsp; &amp;nbsp;buffer positions increase monotonically with glyph positions need
&lt;br&gt;&amp;nbsp; &amp;nbsp;to be fixed or rewritten. &amp;nbsp;But these parts of the display are
&lt;br&gt;&amp;nbsp; &amp;nbsp;relatively few and localized. &amp;nbsp;Also, some redisplay optimizations
&lt;br&gt;&amp;nbsp; &amp;nbsp;need to be disabled when bidirectional text is rendered for
&lt;br&gt;&amp;nbsp; &amp;nbsp;display.
&lt;br&gt;&lt;br&gt;5. Visual-order information is volatile
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;There were lots of discussions several years ago about whether
&lt;br&gt;&amp;nbsp; &amp;nbsp;Emacs should record in some way the information needed to reorder
&lt;br&gt;&amp;nbsp; &amp;nbsp;text into visual order of the characters, to reuse it later. &amp;nbsp;In
&lt;br&gt;&amp;nbsp; &amp;nbsp;UAX#9 terminology, this information is the &amp;quot;resolved level&amp;quot; of each
&lt;br&gt;&amp;nbsp; &amp;nbsp;character. &amp;nbsp;Various features were suggested as a vehicle for this,
&lt;br&gt;&amp;nbsp; &amp;nbsp;for example, some special text properties (except that text
&lt;br&gt;&amp;nbsp; &amp;nbsp;properties, unlike resolved levels, cannot overlap). &amp;nbsp;Lots of
&lt;br&gt;&amp;nbsp; &amp;nbsp;energy went into discussing how this information would be recorded
&lt;br&gt;&amp;nbsp; &amp;nbsp;and how it will be reused, e.g. if portion of the text was
&lt;br&gt;&amp;nbsp; &amp;nbsp;copy-pasted into a different buffer or string. &amp;nbsp;The complications,
&lt;br&gt;&amp;nbsp; &amp;nbsp;it turns out, are abound.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;The current design doesn't record this information at all. &amp;nbsp;It
&lt;br&gt;&amp;nbsp; &amp;nbsp;simply recomputes it each time a buffer or string need to be
&lt;br&gt;&amp;nbsp; &amp;nbsp;displayed or sent to a visual-order stream. &amp;nbsp;The resolved levels
&lt;br&gt;&amp;nbsp; &amp;nbsp;are computed during reordering, then forgotten. &amp;nbsp;It turns out that
&lt;br&gt;&amp;nbsp; &amp;nbsp;bidirectional iteration through buffer text is not much more
&lt;br&gt;&amp;nbsp; &amp;nbsp;expensive than the current unidirectional one. &amp;nbsp;The implementation
&lt;br&gt;&amp;nbsp; &amp;nbsp;of UAX#9 written for Emacs is efficient enough to make any
&lt;br&gt;&amp;nbsp; &amp;nbsp;long-term caching of resolved levels unnecessary.
&lt;br&gt;&lt;br&gt;6. Reordering of strings from `display' properties
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Strings that are values of `display' text properties and overlay
&lt;br&gt;&amp;nbsp; &amp;nbsp;properties are reordered individually. &amp;nbsp;This matters when such
&lt;br&gt;&amp;nbsp; &amp;nbsp;properties cover adjacent portions of buffer text, back to back.
&lt;br&gt;&amp;nbsp; &amp;nbsp;For example, PROP1 is associated with buffer positions P1 to P2,
&lt;br&gt;&amp;nbsp; &amp;nbsp;and PROP2 immediately follows it, being associated with positions
&lt;br&gt;&amp;nbsp; &amp;nbsp;P2 to P3. &amp;nbsp;The current design calls for reordering the characters
&lt;br&gt;&amp;nbsp; &amp;nbsp;of the strings that are the values of PROP1 and PROP2 separately.
&lt;br&gt;&amp;nbsp; &amp;nbsp;An alternative would be to feed them concatenated into the
&lt;br&gt;&amp;nbsp; &amp;nbsp;reordering algorithm, in which case the characters coming from
&lt;br&gt;&amp;nbsp; &amp;nbsp;PROP2 could end up displayed before (to the left) of the characters
&lt;br&gt;&amp;nbsp; &amp;nbsp;coming from PROP1. &amp;nbsp;However, this alternative requires a major
&lt;br&gt;&amp;nbsp; &amp;nbsp;surgery of several parts of the display code. &amp;nbsp;(Interested readers
&lt;br&gt;&amp;nbsp; &amp;nbsp;are advised to read the code of set_cursor_from_row in xdisp.c, as
&lt;br&gt;&amp;nbsp; &amp;nbsp;just one example.) &amp;nbsp;It's not clear what is TRT to do in this case
&lt;br&gt;&amp;nbsp; &amp;nbsp;anyway; I'm not aware of any other application that provides
&lt;br&gt;&amp;nbsp; &amp;nbsp;similar features, so there's nothing I could compare it to. &amp;nbsp;So I
&lt;br&gt;&amp;nbsp; &amp;nbsp;decided to go with the easier design. &amp;nbsp;If the application needs a
&lt;br&gt;&amp;nbsp; &amp;nbsp;single long string, it can always collapse two or more `display'
&lt;br&gt;&amp;nbsp; &amp;nbsp;properties into one long one.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Another, perhaps more serious implication of this design decision
&lt;br&gt;&amp;nbsp; &amp;nbsp;is that strings from `display' properties are reordered separately
&lt;br&gt;&amp;nbsp; &amp;nbsp;from the surrounding buffer text. &amp;nbsp;IOW, production of glyphs from
&lt;br&gt;&amp;nbsp; &amp;nbsp;reordered buffer text is stopped when a `display' property is
&lt;br&gt;&amp;nbsp; &amp;nbsp;found, the string that is the property's value is reordered and
&lt;br&gt;&amp;nbsp; &amp;nbsp;displayed, and then the rest of text is reordered and its glyphs
&lt;br&gt;&amp;nbsp; &amp;nbsp;produced. &amp;nbsp;The effect will be visible, e.g., when a `display'
&lt;br&gt;&amp;nbsp; &amp;nbsp;string is embedded in right-to-left text in otherwise left-to-right
&lt;br&gt;&amp;nbsp; &amp;nbsp;paragraph text. &amp;nbsp;Again, I think in the absence of clear &amp;quot;prior
&lt;br&gt;&amp;nbsp; &amp;nbsp;art&amp;quot;, simplicity of design and the amount of changes required in
&lt;br&gt;&amp;nbsp; &amp;nbsp;the existing display engine win here.
&lt;br&gt;&lt;br&gt;7. Paragraph base direction
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Bidirectional text can be rendered in left-to-right or in
&lt;br&gt;&amp;nbsp; &amp;nbsp;right-to-left paragraphs. &amp;nbsp;The former is used for mostly
&lt;br&gt;&amp;nbsp; &amp;nbsp;left-to-right text, possibly with some embedded right-to-left text.
&lt;br&gt;&amp;nbsp; &amp;nbsp;The latter is used for text that is mostly or entirely
&lt;br&gt;&amp;nbsp; &amp;nbsp;right-to-left. &amp;nbsp;Right-to-left paragraphs are displayed flushed all
&lt;br&gt;&amp;nbsp; &amp;nbsp;the way to the right margin of the display; this is how users of
&lt;br&gt;&amp;nbsp; &amp;nbsp;right-to-left scripts expect to see text in their languages.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;UAX#9 specifies how to determine whether this attribute of a
&lt;br&gt;&amp;nbsp; &amp;nbsp;paragraph, called &amp;quot;base direction&amp;quot;, is one or the other, by finding
&lt;br&gt;&amp;nbsp; &amp;nbsp;the first strong directional character in the paragraph. &amp;nbsp;However,
&lt;br&gt;&amp;nbsp; &amp;nbsp;the Unicode Character Database specifies that NL and CR characters
&lt;br&gt;&amp;nbsp; &amp;nbsp;are paragraph separators, which means each line is a separate
&lt;br&gt;&amp;nbsp; &amp;nbsp;paragraph, as far as UAX#9 is concerned. &amp;nbsp;If Emacs would follow
&lt;br&gt;&amp;nbsp; &amp;nbsp;UAX#9 to the letter, each line could have different base direction,
&lt;br&gt;&amp;nbsp; &amp;nbsp;which is, of course, intolerable. &amp;nbsp;We could avoid this nonsense by
&lt;br&gt;&amp;nbsp; &amp;nbsp;using the &amp;quot;soft newline&amp;quot; or similar features, but I firmly believe
&lt;br&gt;&amp;nbsp; &amp;nbsp;that Emacs should DTRT with bidirectional text even in the simplest
&lt;br&gt;&amp;nbsp; &amp;nbsp;modes, including the Fundamental mode, where every newline is hard.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Fortunately, UAX#9 acknowledges that applications could have other
&lt;br&gt;&amp;nbsp; &amp;nbsp;ideas about what is a &amp;quot;paragraph&amp;quot;. &amp;nbsp;It calls this ``higher
&lt;br&gt;&amp;nbsp; &amp;nbsp;protocol''. &amp;nbsp;So I decided to use such a higher protocol -- namely,
&lt;br&gt;&amp;nbsp; &amp;nbsp;the Emacs definition of a paragraph, as determined by the
&lt;br&gt;&amp;nbsp; &amp;nbsp;`paragraph-start' and `paragraph-separate' regexps. &amp;nbsp;Therefore, the
&lt;br&gt;&amp;nbsp; &amp;nbsp;first strong directional character after `paragraph-start' or
&lt;br&gt;&amp;nbsp; &amp;nbsp;`paragraph-separate' determines the paragraph direction, and that
&lt;br&gt;&amp;nbsp; &amp;nbsp;direction is kept for all the lines of the paragraph, until another
&lt;br&gt;&amp;nbsp; &amp;nbsp;`paragraph-separate' is found. &amp;nbsp;(Of course, this means that
&lt;br&gt;&amp;nbsp; &amp;nbsp;inserting a single character near the beginning of a paragraph
&lt;br&gt;&amp;nbsp; &amp;nbsp;might affect the display of all the lines in that paragraph, so
&lt;br&gt;&amp;nbsp; &amp;nbsp;some of the current redisplay optimizations which deal with changes
&lt;br&gt;&amp;nbsp; &amp;nbsp;to a single line need to be disabled in this case.)
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;There is a buffer-specific variable `paragraph-direction' that
&lt;br&gt;&amp;nbsp; &amp;nbsp;allows to override this dynamic detection of the direction of each
&lt;br&gt;&amp;nbsp; &amp;nbsp;paragraph, and force a certain base direction on all paragraphs in
&lt;br&gt;&amp;nbsp; &amp;nbsp;the buffer. &amp;nbsp;I expect, for example, each major mode for a
&lt;br&gt;&amp;nbsp; &amp;nbsp;programming language to force the left-to-right paragraph
&lt;br&gt;&amp;nbsp; &amp;nbsp;direction, because programming languages are written left to right,
&lt;br&gt;&amp;nbsp; &amp;nbsp;and right-to-left scripts appear in such buffers only in strings
&lt;br&gt;&amp;nbsp; &amp;nbsp;embedded in the program or in comments.
&lt;br&gt;&lt;br&gt;8. User control of visual order
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;UAX#9 does not always produce perfect results on the screen.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Notable cases where it doesn't are related to characters such as
&lt;br&gt;&amp;nbsp; &amp;nbsp;`+' and `-' which have more than one role: they can be used in
&lt;br&gt;&amp;nbsp; &amp;nbsp;mathematical context or in plain-text context; the &amp;quot;correct&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp;reordering turns out to be different in each case.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Again, lots of energy was invested in past discussions how to
&lt;br&gt;&amp;nbsp; &amp;nbsp;prevent these blunders. &amp;nbsp;Several clever heuristics are known to
&lt;br&gt;&amp;nbsp; &amp;nbsp;avoid that. &amp;nbsp;The problem is that all those heuristics contradict
&lt;br&gt;&amp;nbsp; &amp;nbsp;UAX#9, which means text that looks OK in Emacs will look different
&lt;br&gt;&amp;nbsp; &amp;nbsp;(i.e. wrong) in another application.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;I decided it was unjustified to deviate from UAX#9. &amp;nbsp;Its algorithm
&lt;br&gt;&amp;nbsp; &amp;nbsp;already provides the solution to this problem: users can always
&lt;br&gt;&amp;nbsp; &amp;nbsp;control the visual order by inserting special formatting codes at
&lt;br&gt;&amp;nbsp; &amp;nbsp;strategic places. &amp;nbsp;These codes are by default not shown in the
&lt;br&gt;&amp;nbsp; &amp;nbsp;displayed text, but they influence the resolved directionality of
&lt;br&gt;&amp;nbsp; &amp;nbsp;the surrounding characters, and thus change their visual order. &amp;nbsp;We
&lt;br&gt;&amp;nbsp; &amp;nbsp;could (and probably should) have commands in Emacs to control the
&lt;br&gt;&amp;nbsp; &amp;nbsp;visual order that will work simply by inserting the appropriate
&lt;br&gt;&amp;nbsp; &amp;nbsp;formatting codes. &amp;nbsp;For example, a paragraph starting with an Arabic
&lt;br&gt;&amp;nbsp; &amp;nbsp;letter could nonetheless be rendered as left-to-right paragraph by
&lt;br&gt;&amp;nbsp; &amp;nbsp;inserting the LRM code before that Arabic character; Emacs could
&lt;br&gt;&amp;nbsp; &amp;nbsp;have a command called, say, `make-paragraph-left-to-right' that did
&lt;br&gt;&amp;nbsp; &amp;nbsp;its job simply by inserting LRM at the beginning of the paragraph.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;This design kills two birds: (a) it produces text that is compliant
&lt;br&gt;&amp;nbsp; &amp;nbsp;with other applications, and will display the same as in Emacs, and
&lt;br&gt;&amp;nbsp; &amp;nbsp;(b) it avoids the need to invent yet another Emacs infrastructure
&lt;br&gt;&amp;nbsp; &amp;nbsp;feature to keep information such as paragraph direction outside of
&lt;br&gt;&amp;nbsp; &amp;nbsp;the text itself.
&lt;br&gt;&lt;br&gt;That is all for now. &amp;nbsp;If you have comments or questions, you are
&lt;br&gt;welcome to voice them. &amp;nbsp;However, I reserver the right to respond only
&lt;br&gt;to those I'm interested in and/or have time for. ;-)
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=25828061&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Bidirectional-editing-in-Emacs----main-design-decisions-tp25828061p25828061.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-24581710</id>
	<title>Re: Compilation error 0.9.1</title>
	<published>2009-07-20T21:59:03Z</published>
	<updated>2009-07-20T21:59:03Z</updated>
	<author>
		<name>TAKAHASHI Naoto</name>
	</author>
	<content type="html">Hajder writes:
&lt;br&gt;&lt;br&gt;&amp;gt; Regarding this thread:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://www.nabble.com/Query-regarding-emacs-compilation-errors.-td17102487.html&quot; target=&quot;_top&quot;&gt;http://www.nabble.com/Query-regarding-emacs-compilation-errors.-td17102487.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;&amp;gt; For your information, just wanted to say that the (second) compilation
&lt;br&gt;&amp;gt; error, is also apparent on my linux desktop - Ubuntu Jaunty Jackalope 9.04
&lt;br&gt;&lt;br&gt;Try the following commands after the segmentation fault caused by
&lt;br&gt;&amp;quot;make&amp;quot;.
&lt;br&gt;&lt;br&gt;$ cd src
&lt;br&gt;$ setarch i386 -R ./temacs --batch --load loadup dump
&lt;br&gt;&lt;br&gt;I found this workaround in the etc/PROBLEMS file. &amp;nbsp;I have just tried
&lt;br&gt;this method on Fedora 11 and Ubuntu 9.04. &amp;nbsp;It worked.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;TAKAHASHI Naoto
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=24581710&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://www.m17n.org/ntakahas/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/ntakahas/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=24581710&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Compilation-error-0.9.1-tp24556638p24581710.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-24556638</id>
	<title>Compilation error 0.9.1</title>
	<published>2009-07-19T05:38:13Z</published>
	<updated>2009-07-19T05:38:13Z</updated>
	<author>
		<name>Hajder</name>
	</author>
	<content type="html">Hi&lt;br&gt;&lt;br&gt;Regarding this thread: &lt;a href=&quot;http://www.nabble.com/Query-regarding-emacs-compilation-errors.-td17102487.html&quot; target=&quot;_top&quot;&gt;http://www.nabble.com/Query-regarding-emacs-compilation-errors.-td17102487.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;For your information, just wanted to say that the (second) compilation error, is also apparent on my linux desktop - Ubuntu Jaunty Jackalope 9.04&lt;br&gt;
&lt;br&gt;Loading float-sup...&lt;br&gt;((43812 . 5614) (8840 . 0) (539 . 82) 60720 139632 (14 . 9) (14 . 12) (4426 . 1685))&lt;br&gt;Loading vc-hooks...&lt;br&gt;Loading ediff-hook...&lt;br&gt;((44774 . 4652) (8940 . 0) (540 . 81) 61640 139649 (14 . 9) (14 . 12) (4486 . 1625))&lt;br&gt;
Finding pointers to doc strings...&lt;br&gt;Finding pointers to doc strings...done&lt;br&gt;Dumping under names emacs and emacs-21.3.50.1&lt;br&gt;Segmentation fault&lt;br&gt;make[1]: *** [emacs] Error 139&lt;br&gt;make[1]: Leaving directory `/home/hajder/emacs-bidi/src&amp;#39;&lt;br&gt;
make: *** [src] Error 2&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;br /&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=24556638&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Compilation-error-0.9.1-tp24556638p24556638.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-24515279</id>
	<title>Re: Query regarding emacs compilation errors.</title>
	<published>2009-07-16T05:20:04Z</published>
	<updated>2009-07-16T05:20:04Z</updated>
	<author>
		<name>TAKAHASHI Naoto</name>
	</author>
	<content type="html">Michael Blaustein writes:
&lt;br&gt;&lt;br&gt;&amp;gt; Was this problem with compiling emacs-bidi-0.9.1 on fedora ever solved?
&lt;br&gt;&lt;br&gt;&amp;gt; I have the same problem on fedora 10 and fedora 11. &amp;nbsp;I'll appreciate any
&lt;br&gt;&amp;gt; advice.
&lt;br&gt;&lt;br&gt;Not yet. &amp;nbsp;We are trying to upgrade it.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Thu, 2008-05-08 at 16:40 +0900, TAKAHASHI Naoto wrote:
&lt;br&gt;&amp;gt;&amp;gt; &amp;quot;Manjiri Gapchup&amp;quot; writes:
&lt;br&gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; My linux version is
&lt;br&gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; Linux torana.trinity.local 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; 19:40:16 EDT 2007 i686 i686 i386 GNU/Linux 
&lt;br&gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; It seems that you are using Fedora 5. &amp;nbsp;I have just tried to compile
&lt;br&gt;&amp;gt;&amp;gt; emacs-bidi-0.9.1 on Fedora 7 and Fedra 8, and they both returned the
&lt;br&gt;&amp;gt;&amp;gt; same error that you reported. &amp;nbsp;:-(
&lt;br&gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; Will you please let us know which Linux version you are using. We will
&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; try to install it here and test.
&lt;br&gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; I am using Debian Sid (Unstable), but I have confirmed that
&lt;br&gt;&amp;gt;&amp;gt; emacs-bidi-0.9.1 compiles fine on Debian Etch (Stable), too. &amp;nbsp;I
&lt;br&gt;&amp;gt;&amp;gt; recommend you to try Etch first.
&lt;br&gt;&amp;gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; We will investigate the cause of the error with Fedora systems as soon
&lt;br&gt;&amp;gt;&amp;gt; as the main author of the emacs-bidi comes back from his business
&lt;br&gt;&amp;gt;&amp;gt; trip.
&lt;br&gt;&amp;gt;&amp;gt; 
&lt;/div&gt;&lt;br&gt;-- 
&lt;br&gt;TAKAHASHI Naoto
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=24515279&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://www.m17n.org/ntakahas/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/ntakahas/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=24515279&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Query-regarding-emacs-compilation-errors.-tp17102487p24515279.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-24501184</id>
	<title>Re: Query regarding emacs compilation errors.</title>
	<published>2009-07-15T08:36:57Z</published>
	<updated>2009-07-15T08:36:57Z</updated>
	<author>
		<name>Michael Blaustein-3</name>
	</author>
	<content type="html">Was this problem with compiling emacs-bidi-0.9.1 on fedora ever solved?
&lt;br&gt;&lt;br&gt;I have the same problem on fedora 10 and fedora 11. &amp;nbsp;I'll appreciate any
&lt;br&gt;advice.
&lt;br&gt;&lt;br&gt;Thanks.
&lt;br&gt;&lt;br&gt;On Thu, 2008-05-08 at 16:40 +0900, TAKAHASHI Naoto wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;quot;Manjiri Gapchup&amp;quot; writes:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; My linux version is
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; Linux torana.trinity.local 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12
&lt;br&gt;&amp;gt; &amp;gt; 19:40:16 EDT 2007 i686 i686 i386 GNU/Linux 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; It seems that you are using Fedora 5. &amp;nbsp;I have just tried to compile
&lt;br&gt;&amp;gt; emacs-bidi-0.9.1 on Fedora 7 and Fedra 8, and they both returned the
&lt;br&gt;&amp;gt; same error that you reported. &amp;nbsp;:-(
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; Will you please let us know which Linux version you are using. We will
&lt;br&gt;&amp;gt; &amp;gt; try to install it here and test.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I am using Debian Sid (Unstable), but I have confirmed that
&lt;br&gt;&amp;gt; emacs-bidi-0.9.1 compiles fine on Debian Etch (Stable), too. &amp;nbsp;I
&lt;br&gt;&amp;gt; recommend you to try Etch first.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; We will investigate the cause of the error with Fedora systems as soon
&lt;br&gt;&amp;gt; as the main author of the emacs-bidi comes back from his business
&lt;br&gt;&amp;gt; trip.
&lt;br&gt;&amp;gt; 
&lt;/div&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=24501184&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Query-regarding-emacs-compilation-errors.-tp17102487p24501184.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-17601775</id>
	<title>&quot;make&quot; failure for emacs-bidi-0.9.1.tar.gz</title>
	<published>2008-06-02T06:47:41Z</published>
	<updated>2008-06-02T06:47:41Z</updated>
	<author>
		<name>John Green-12</name>
	</author>
	<content type="html">After unpacking the above file, I followed these instructions:
&lt;br&gt;&lt;br&gt;$ cd emacs-bidi
&lt;br&gt;&amp;nbsp; $ ./configure
&lt;br&gt;&amp;nbsp; $ make
&lt;br&gt;&lt;br&gt;This is what happened:
&lt;br&gt;&lt;br&gt;sudo make
&lt;br&gt;Password:
&lt;br&gt;cd lib-src; make all &amp;nbsp; CC='gcc' CFLAGS='-g -O2'
&lt;br&gt;CPPFLAGS='-I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib'
&lt;br&gt;LDFLAGS='-L/usr/local/lib' MAKE='make'
&lt;br&gt;cd src; make all &amp;nbsp; CC='gcc' CFLAGS='-g -O2'
&lt;br&gt;CPPFLAGS='-I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib'
&lt;br&gt;LDFLAGS='-L/usr/local/lib' MAKE='make'
&lt;br&gt;cd ../lwlib/; make &amp;nbsp;CC='gcc' CFLAGS='-g -O2' MAKE='make'
&lt;br&gt;&amp;quot;C_SWITCH_X_SITE=-I/usr/local/include&amp;quot; &amp;quot;C_SWITCH_X_MACHINE=&amp;quot;
&lt;br&gt;&amp;quot;C_SWITCH_X_SYSTEM=&amp;quot; &amp;quot;C_SWITCH_SITE=&amp;quot; &amp;quot;C_SWITCH_MACHINE=&amp;quot;
&lt;br&gt;&amp;quot;C_SWITCH_SYSTEM=-I/usr/X11R6/include -I/usr/local/include
&lt;br&gt;-L/usr/local/lib&amp;quot;
&lt;br&gt;touch stamp-oldxmenu
&lt;br&gt;gcc -c -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib
&lt;br&gt;-Demacs -DHAVE_CONFIG_H -DUSE_LUCID &amp;nbsp;-I.
&lt;br&gt;-I/home/john/Desktop/emacs-bidi/src -I/usr/X11R6/include
&lt;br&gt;-I/usr/local/include -L/usr/local/lib -I/usr/local/include -g -O2
&lt;br&gt;xterm.c
&lt;br&gt;xterm.c: In function `x_set_toolkit_scroll_bar_thumb':
&lt;br&gt;xterm.c:9181: error: structure has no member named `scroll_mode'
&lt;br&gt;xterm.c:9183: error: structure has no member named `scroll_mode'
&lt;br&gt;xterm.c:9194: error: structure has no member named `scroll_mode'
&lt;br&gt;*** Error code 1
&lt;br&gt;&lt;br&gt;Stop in /usr/home/john/Desktop/emacs-bidi/src.
&lt;br&gt;*** Error code 1
&lt;br&gt;&lt;br&gt;Stop in /usr/home/john/Desktop/emacs-bidi.
&lt;br&gt;&lt;br&gt;Can anybody help? &amp;nbsp;I am running PC-BSD and I suspect I need to do
&lt;br&gt;something about how it implements x windows, but don't know what or
&lt;br&gt;how.
&lt;br&gt;&lt;br&gt;thanks
&lt;br&gt;&lt;br&gt;John
&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17601775&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/%22make%22-failure-for-emacs-bidi-0.9.1.tar.gz-tp17601775p17601775.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-17122071</id>
	<title>Re: Query regarding emacs compilation errors.</title>
	<published>2008-05-08T00:40:08Z</published>
	<updated>2008-05-08T00:40:08Z</updated>
	<author>
		<name>TAKAHASHI Naoto</name>
	</author>
	<content type="html">&amp;quot;Manjiri Gapchup&amp;quot; writes:
&lt;br&gt;&lt;br&gt;&amp;gt; My linux version is
&lt;br&gt;&lt;br&gt;&amp;gt; Linux torana.trinity.local 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12
&lt;br&gt;&amp;gt; 19:40:16 EDT 2007 i686 i686 i386 GNU/Linux 
&lt;br&gt;&lt;br&gt;It seems that you are using Fedora 5. &amp;nbsp;I have just tried to compile
&lt;br&gt;emacs-bidi-0.9.1 on Fedora 7 and Fedra 8, and they both returned the
&lt;br&gt;same error that you reported. &amp;nbsp;:-(
&lt;br&gt;&lt;br&gt;&amp;gt; Will you please let us know which Linux version you are using. We will
&lt;br&gt;&amp;gt; try to install it here and test.
&lt;br&gt;&lt;br&gt;I am using Debian Sid (Unstable), but I have confirmed that
&lt;br&gt;emacs-bidi-0.9.1 compiles fine on Debian Etch (Stable), too. &amp;nbsp;I
&lt;br&gt;recommend you to try Etch first.
&lt;br&gt;&lt;br&gt;We will investigate the cause of the error with Fedora systems as soon
&lt;br&gt;as the main author of the emacs-bidi comes back from his business
&lt;br&gt;trip.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;TAKAHASHI Naoto
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17122071&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://www.m17n.org/ntakahas/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/ntakahas/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17122071&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Query-regarding-emacs-compilation-errors.-tp17102487p17122071.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-17121072</id>
	<title>RE: Query regarding emacs compilation errors.</title>
	<published>2008-05-07T23:31:31Z</published>
	<updated>2008-05-07T23:31:31Z</updated>
	<author>
		<name>Manjiri Gapchup</name>
	</author>
	<content type="html">Will you please let us know which Linux version you are using. We will
&lt;br&gt;try to install it here and test.
&lt;br&gt;&lt;br&gt;Thanks and Regards,
&lt;br&gt;Manjiri 
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: Manjiri Gapchup 
&lt;br&gt;Sent: Thursday, May 08, 2008 9:14 AM
&lt;br&gt;To: 'TAKAHASHI Naoto'
&lt;br&gt;Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17121072&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;; Kalpesh Balar
&lt;br&gt;Subject: RE: [emacs-bidi] Query regarding emacs compilation errors.
&lt;br&gt;&lt;br&gt;Hi,
&lt;br&gt;&lt;br&gt;My linux version is
&lt;br&gt;&lt;br&gt;Linux torana.trinity.local 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12
&lt;br&gt;19:40:16 EDT 2007 i686 i686 i386 GNU/Linux 
&lt;br&gt;&lt;br&gt;Please let me know if any more information is required.
&lt;br&gt;&lt;br&gt;Thanks and Regards,
&lt;br&gt;Manjiri
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: TAKAHASHI Naoto [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17121072&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;]
&lt;br&gt;Sent: Thursday, May 08, 2008 9:07 AM
&lt;br&gt;To: Manjiri Gapchup
&lt;br&gt;Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17121072&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;; Kalpesh Balar
&lt;br&gt;Subject: Re: [emacs-bidi] Query regarding emacs compilation errors.
&lt;br&gt;&lt;br&gt;&amp;quot;Manjiri Gapchup&amp;quot; writes:
&lt;br&gt;&lt;br&gt;&amp;gt; And the previous error is not seen but now I am getting Error as,
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Loading vc-hooks...
&lt;br&gt;&amp;gt; Loading ediff-hook...
&lt;br&gt;&amp;gt; ((44753 . 4669) (8940 . 0) (540 . 81) 61678 139650 (14 . 9) (14 . 12)
&lt;br&gt;&amp;gt; (4483 . 1565)) Finding pointers to doc strings...
&lt;br&gt;&amp;gt; Finding pointers to doc strings...done Dumping under names emacs and
&lt;br&gt;&amp;gt; emacs-21.3.50.1
&lt;br&gt;&amp;gt; make[1]: *** [emacs] Segmentation fault
&lt;br&gt;&amp;gt; make[1]: *** Deleting file `emacs'
&lt;br&gt;&amp;gt; make[1]: Leaving directory `/home/mgapchup/emacs-bidi/src'
&lt;br&gt;&amp;gt; make: *** [src] Error 2
&lt;/div&gt;&lt;br&gt;I could not reproduce this error. &amp;nbsp;Will you tell me about your &amp;quot;linux&amp;quot;
&lt;br&gt;system in more detail? &amp;nbsp;For example the distribution name, the version
&lt;br&gt;number, CPU architecture, etc.
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;TAKAHASHI Naoto
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17121072&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://www.m17n.org/ntakahas/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/ntakahas/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17121072&amp;i=4&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Query-regarding-emacs-compilation-errors.-tp17102487p17121072.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-17119461</id>
	<title>RE: Query regarding emacs compilation errors.</title>
	<published>2008-05-07T20:44:03Z</published>
	<updated>2008-05-07T20:44:03Z</updated>
	<author>
		<name>Manjiri Gapchup</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;My linux version is
&lt;br&gt;&lt;br&gt;Linux torana.trinity.local 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12
&lt;br&gt;19:40:16 EDT 2007 i686 i686 i386 GNU/Linux 
&lt;br&gt;&lt;br&gt;Please let me know if any more information is required.
&lt;br&gt;&lt;br&gt;Thanks and Regards,
&lt;br&gt;Manjiri
&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: TAKAHASHI Naoto [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17119461&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;] 
&lt;br&gt;Sent: Thursday, May 08, 2008 9:07 AM
&lt;br&gt;To: Manjiri Gapchup
&lt;br&gt;Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17119461&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;; Kalpesh Balar
&lt;br&gt;Subject: Re: [emacs-bidi] Query regarding emacs compilation errors.
&lt;br&gt;&lt;br&gt;&amp;quot;Manjiri Gapchup&amp;quot; writes:
&lt;br&gt;&lt;br&gt;&amp;gt; And the previous error is not seen but now I am getting Error as,
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Loading vc-hooks...
&lt;br&gt;&amp;gt; Loading ediff-hook...
&lt;br&gt;&amp;gt; ((44753 . 4669) (8940 . 0) (540 . 81) 61678 139650 (14 . 9) (14 . 12) 
&lt;br&gt;&amp;gt; (4483 . 1565)) Finding pointers to doc strings...
&lt;br&gt;&amp;gt; Finding pointers to doc strings...done Dumping under names emacs and 
&lt;br&gt;&amp;gt; emacs-21.3.50.1
&lt;br&gt;&amp;gt; make[1]: *** [emacs] Segmentation fault
&lt;br&gt;&amp;gt; make[1]: *** Deleting file `emacs'
&lt;br&gt;&amp;gt; make[1]: Leaving directory `/home/mgapchup/emacs-bidi/src'
&lt;br&gt;&amp;gt; make: *** [src] Error 2
&lt;/div&gt;&lt;br&gt;I could not reproduce this error. &amp;nbsp;Will you tell me about your &amp;quot;linux&amp;quot;
&lt;br&gt;system in more detail? &amp;nbsp;For example the distribution name, the version
&lt;br&gt;number, CPU architecture, etc.
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;TAKAHASHI Naoto
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17119461&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://www.m17n.org/ntakahas/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/ntakahas/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17119461&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Query-regarding-emacs-compilation-errors.-tp17102487p17119461.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-17119417</id>
	<title>Re: Query regarding emacs compilation errors.</title>
	<published>2008-05-07T20:36:54Z</published>
	<updated>2008-05-07T20:36:54Z</updated>
	<author>
		<name>TAKAHASHI Naoto</name>
	</author>
	<content type="html">&amp;quot;Manjiri Gapchup&amp;quot; writes:
&lt;br&gt;&lt;br&gt;&amp;gt; And the previous error is not seen but now I am getting
&lt;br&gt;&amp;gt; Error as,
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Loading vc-hooks...
&lt;br&gt;&amp;gt; Loading ediff-hook...
&lt;br&gt;&amp;gt; ((44753 . 4669) (8940 . 0) (540 . 81) 61678 139650 (14 . 9) (14 . 12) (4483 . 1565))
&lt;br&gt;&amp;gt; Finding pointers to doc strings...
&lt;br&gt;&amp;gt; Finding pointers to doc strings...done
&lt;br&gt;&amp;gt; Dumping under names emacs and emacs-21.3.50.1
&lt;br&gt;&amp;gt; make[1]: *** [emacs] Segmentation fault
&lt;br&gt;&amp;gt; make[1]: *** Deleting file `emacs'
&lt;br&gt;&amp;gt; make[1]: Leaving directory `/home/mgapchup/emacs-bidi/src'
&lt;br&gt;&amp;gt; make: *** [src] Error 2 
&lt;/div&gt;&lt;br&gt;I could not reproduce this error. &amp;nbsp;Will you tell me about your &amp;quot;linux&amp;quot;
&lt;br&gt;system in more detail? &amp;nbsp;For example the distribution name, the version
&lt;br&gt;number, CPU architecture, etc.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;TAKAHASHI Naoto
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17119417&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://www.m17n.org/ntakahas/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/ntakahas/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17119417&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Query-regarding-emacs-compilation-errors.-tp17102487p17119417.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-17118879</id>
	<title>RE: Query regarding emacs compilation errors.</title>
	<published>2008-05-07T19:46:23Z</published>
	<updated>2008-05-07T19:46:23Z</updated>
	<author>
		<name>Manjiri Gapchup</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp;Hi,
&lt;br&gt;&lt;br&gt;Thanks for your support.
&lt;br&gt;&lt;br&gt;I have modified
&lt;br&gt;Line 3371 in keyboard.c from
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; static SIGTYPE interrupt_signal P_ ((int));
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; to
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; extern SIGTYPE interrupt_signal ();
&lt;br&gt;And the previous error is not seen but now I am getting
&lt;br&gt;Error as,
&lt;br&gt;&lt;br&gt;Loading vc-hooks...
&lt;br&gt;Loading ediff-hook...
&lt;br&gt;((44753 . 4669) (8940 . 0) (540 . 81) 61678 139650 (14 . 9) (14 . 12) (4483 . 1565))
&lt;br&gt;Finding pointers to doc strings...
&lt;br&gt;Finding pointers to doc strings...done
&lt;br&gt;Dumping under names emacs and emacs-21.3.50.1
&lt;br&gt;make[1]: *** [emacs] Segmentation fault
&lt;br&gt;make[1]: *** Deleting file `emacs'
&lt;br&gt;make[1]: Leaving directory `/home/mgapchup/emacs-bidi/src'
&lt;br&gt;make: *** [src] Error 2 
&lt;br&gt;&lt;br&gt;Will you please guide me in this context ?
&lt;br&gt;&lt;br&gt;Thanks and Regards,
&lt;br&gt;Manjiri
&lt;br&gt;&lt;br&gt;&lt;br&gt;-----Original Message-----
&lt;br&gt;From: TAKAHASHI Naoto [mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17118879&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;] 
&lt;br&gt;Sent: Wednesday, May 07, 2008 6:25 PM
&lt;br&gt;To: Manjiri Gapchup
&lt;br&gt;Cc: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17118879&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;; Kalpesh Balar
&lt;br&gt;Subject: Re: [emacs-bidi] Query regarding emacs compilation errors.
&lt;br&gt;&lt;br&gt;&amp;quot;Manjiri Gapchup&amp;quot; writes:
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;gt; We have extracted emacs-bidi-0.9.1.tar.gz &amp;lt;&lt;a href=&quot;http://www.m17n.org/emacs-bidi/emacs-bidi-0.9.1.tar.gz&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/emacs-bidi/emacs-bidi-0.9.1.tar.gz&lt;/a&gt;&amp;gt; &amp;nbsp; and executed on linux
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;gt; 1) ./configure
&lt;br&gt;&amp;gt; 2) make
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;gt; While compilation process we are getting following errors
&lt;br&gt;&amp;nbsp;
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; keyboard.c: In function âkbd_buffer_store_eventâ:
&lt;br&gt;&amp;gt; keyboard.c:3371: error: invalid storage class for function 
&lt;br&gt;&amp;gt; âinterrupt_signalâ
&lt;br&gt;&amp;gt; keyboard.c: At top level:
&lt;br&gt;&amp;gt; keyboard.c:9925: warning: conflicting types for âinterrupt_signalâ
&lt;br&gt;&amp;gt; keyboard.c:3415: warning: previous implicit declaration of 
&lt;br&gt;&amp;gt; âinterrupt_signalâ was here
&lt;br&gt;&amp;gt; make[1]: *** [keyboard.o] Error 1
&lt;br&gt;&amp;gt; make[1]: Leaving directory `/home/mgapchup/emacs-bidi/src'
&lt;br&gt;&amp;gt; make: *** [src] Error 2
&lt;/div&gt;&lt;br&gt;&amp;gt; Will you please guide us so that we can run this code?
&lt;br&gt;&amp;nbsp;
&lt;br&gt;Please change Line 3371 in keyboard.c from
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; static SIGTYPE interrupt_signal P_ ((int));
&lt;br&gt;&lt;br&gt;to
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; extern SIGTYPE interrupt_signal ();
&lt;br&gt;&lt;br&gt;Sorry for inconvenience.
&lt;br&gt;&lt;br&gt;--
&lt;br&gt;TAKAHASHI Naoto
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17118879&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://www.m17n.org/ntakahas/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/ntakahas/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17118879&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Query-regarding-emacs-compilation-errors.-tp17102487p17118879.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-17104230</id>
	<title>Re: Query regarding emacs compilation errors.</title>
	<published>2008-05-07T05:54:31Z</published>
	<updated>2008-05-07T05:54:31Z</updated>
	<author>
		<name>TAKAHASHI Naoto</name>
	</author>
	<content type="html">&amp;quot;Manjiri Gapchup&amp;quot; writes:
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;gt; We have extracted emacs-bidi-0.9.1.tar.gz &amp;lt;&lt;a href=&quot;http://www.m17n.org/emacs-bidi/emacs-bidi-0.9.1.tar.gz&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/emacs-bidi/emacs-bidi-0.9.1.tar.gz&lt;/a&gt;&amp;gt; &amp;nbsp; and executed on linux
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;gt; 1) ./configure
&lt;br&gt;&amp;gt; 2) make
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;gt; While compilation process we are getting following errors
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;gt; keyboard.c: In function âkbd_buffer_store_eventâ:
&lt;br&gt;&amp;gt; keyboard.c:3371: error: invalid storage class for function âinterrupt_signalâ
&lt;br&gt;&amp;gt; keyboard.c: At top level:
&lt;br&gt;&amp;gt; keyboard.c:9925: warning: conflicting types for âinterrupt_signalâ
&lt;br&gt;&amp;gt; keyboard.c:3415: warning: previous implicit declaration of âinterrupt_signalâ was here
&lt;br&gt;&amp;gt; make[1]: *** [keyboard.o] Error 1
&lt;br&gt;&amp;gt; make[1]: Leaving directory `/home/mgapchup/emacs-bidi/src'
&lt;br&gt;&amp;gt; make: *** [src] Error 2
&lt;br&gt;&lt;br&gt;&amp;gt; Will you please guide us so that we can run this code?
&lt;br&gt;&amp;nbsp;
&lt;br&gt;Please change Line 3371 in keyboard.c from
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; static SIGTYPE interrupt_signal P_ ((int));
&lt;br&gt;&lt;br&gt;to
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; extern SIGTYPE interrupt_signal ();
&lt;br&gt;&lt;br&gt;Sorry for inconvenience.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;TAKAHASHI Naoto
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17104230&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ntakahas@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://www.m17n.org/ntakahas/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.m17n.org/ntakahas/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;emacs-bidi mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=17104230&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;emacs-bidi@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;http://lists.gnu.org/mailman/listinfo/emacs-bidi&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://lists.gnu.org/mailman/listinfo/emacs-bidi&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Query-regarding-emacs-compilation-errors.-tp17102487p17104230.html" />
</entry>

</feed>
