From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Proposing Addition of a BIDI SubMenu to "Options" Date: Wed, 03 Aug 2011 05:24:58 -0400 Message-ID: References: Reply-To: Eli Zaretskii NNTP-Posting-Host: lo.gmane.org X-Trace: dough.gmane.org 1312363507 24880 80.91.229.12 (3 Aug 2011 09:25:07 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 3 Aug 2011 09:25:07 +0000 (UTC) Cc: emacs-devel@gnu.org To: Mohsen BANAN Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Aug 03 11:25:03 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QoXhH-0006EH-Cx for ged-emacs-devel@m.gmane.org; Wed, 03 Aug 2011 11:25:03 +0200 Original-Received: from localhost ([::1]:43989 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QoXhG-0002zt-Sm for ged-emacs-devel@m.gmane.org; Wed, 03 Aug 2011 05:25:02 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:50736) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QoXhE-0002zT-Bv for emacs-devel@gnu.org; Wed, 03 Aug 2011 05:25:01 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QoXhC-0004Ff-UL for emacs-devel@gnu.org; Wed, 03 Aug 2011 05:25:00 -0400 Original-Received: from fencepost.gnu.org ([140.186.70.10]:49668) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QoXhC-0004Fb-So for emacs-devel@gnu.org; Wed, 03 Aug 2011 05:24:58 -0400 Original-Received: from eliz by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1QoXhC-0003lM-4g; Wed, 03 Aug 2011 05:24:58 -0400 In-reply-to: (message from Mohsen BANAN on Tue, 02 Aug 2011 20:37:57 -0700) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 140.186.70.10 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:142797 Archived-At: > From: Mohsen BANAN > Date: Tue, 02 Aug 2011 20:37:57 -0700 > > > I am proposing that something like this be added > to the Options Menu -- Perhaps right after Mule. Thanks. I object to exposing bidi-display-reordering to the user level. It is no accident that I didn't make it a user option (unlike bidi-paragraph-direction). There should be no reason for users to change this variable, at least not conveniently. As for the rest, what you suggest is a beginning, but it should include more. For example, a command to make the current paragraph (and only the current paragraph) L2R resp R2L, a command to enclose a portion of text into a directional embedding, with or without directional override, etc. We don't want users to be experts in the UBA to edit bidirectional text conveniently. The challenge is to come up with a good UI for these features. IMNSHO, a menu item that just sets a variable is largely missing the point in this respect, because setting a variable is the easy part of this stuff. > In addittion to English, I think it would be kool > for the menu items to also be in Hebrew, Arabic > and Persian. I have included starting point > Persian text below. That already works in most toolkits (all of those I tried, but I don't have access to all of the supported ones). But what you are trying to do is start a localization of the Emacs UI, not just display bidirectional text in a menu item. That is a much larger issue, and it cannot be sneaked in just for some scripts and languages. It must be part of some larger framework. For example, even if we consider just the R2L languages, we should allow to customize the UI so that the menu-bar items and the tool-bar buttons, as well as the mode line, display starting at the right margin of the frame, like other applications do. And there are more issues to tackle, as significant portions of the Emacs UI are implemented as text inserted into buffers (e.g., Customize, Dired, etc.). Making all this localizable is a large job, but it cannot be bypassed.