From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Thamer Mahmoud Newsgroups: gmane.emacs.devel,gmane.emacs.bidi Subject: Re: Arabic support Date: Mon, 06 Sep 2010 16:45:00 +0300 Message-ID: <871v97htpf.fsf@zemblan.newkuwait.org> References: <83bp8oml9c.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: dough.gmane.org 1283780750 24973 80.91.229.12 (6 Sep 2010 13:45:50 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 6 Sep 2010 13:45:50 +0000 (UTC) Cc: emacs-bidi@gnu.org To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Sep 06 15:45:49 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Osc12-0003NL-RA for ged-emacs-devel@m.gmane.org; Mon, 06 Sep 2010 15:45:45 +0200 Original-Received: from localhost ([127.0.0.1]:44280 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Osc11-0007Hs-Pr for ged-emacs-devel@m.gmane.org; Mon, 06 Sep 2010 09:45:43 -0400 Original-Received: from [140.186.70.92] (port=34343 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Osc0q-0007GY-IE for emacs-devel@gnu.org; Mon, 06 Sep 2010 09:45:33 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Osc0p-0005jg-6W for emacs-devel@gnu.org; Mon, 06 Sep 2010 09:45:32 -0400 Original-Received: from lo.gmane.org ([80.91.229.12]:55794) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Osc0n-0005io-Ul for emacs-devel@gnu.org; Mon, 06 Sep 2010 09:45:31 -0400 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1Osc0l-0003Bl-Vc for emacs-devel@gnu.org; Mon, 06 Sep 2010 15:45:27 +0200 Original-Received: from 89.203.6.209 ([89.203.6.209]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 06 Sep 2010 15:45:27 +0200 Original-Received: from thamer.mahmoud by 89.203.6.209 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 06 Sep 2010 15:45:27 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 255 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: 89.203.6.209 User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) Cancel-Lock: sha1:EvftwI0xJizajW/PFLhXO9SMYos= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:129706 gmane.emacs.bidi:821 Archived-At: --=-=-= >> From: Kenichi Handa >> Date: Thu, 26 Aug 2010 10:10:05 +0900 >> >> I've just committed changes to trunk for Arabic shaping. If >> there're any Arabic users in this list, please check the >> displaying of Arabic text. On GNU/Linux system, you must >> compile Emacs with libotf and m17n-lib (configure script >> should detect them automatically). > Thanks for working on this. Here is my take: * Attached are two screenshots showing the Arabic line from the HELLO file rendered by gedit and Emacs using the same font (Nazli-20 from ttf-farsiweb). Notice that in Emacs not all fonts have their LAM and ALIF properly replaced by the LAM-ALIF ligature. Also the diacritics (SHADDA) appears lower and less legible for the same font. * The third attachment shows that when highlighting a region of an Arabic word, the cursor at the edges of the visible selection "breaks" the shaping and reshapes the characters around it into their isolated form. This creates a wave-effect of moving characters with some visible artifacts and bad indention issues. * While the cursor is at a composed character (e.g., SEEN+SHADDA), pressing C-p moves point unexpectedly to the beginning of the current line. * I do at least see one "trap" with C-p, although it is hard to reproduce. You can try moving 4 or 5 lines below the Arabic line in the HELLO file, then move upward using 4-5 C-p and get the cursor at the SEEN+SHADDA. After which any further C-p jumps between SEEN and LAM-ALIF, never going to the previous line. * For those using Debian (Squeeze), I had to install not just the libm17n and libm17n-dev packages, but also m17n-db. It seems that the configure script doesn't detect or know about the status of (the Debian-specific) m17n-db. Thanks again, Thamer --=-=-= Content-Type: image/png Content-Disposition: attachment; filename=arabic-emacs24.png Content-Transfer-Encoding: base64 Content-Description: Emacs rendering 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 --=-=-= Content-Type: image/png Content-Disposition: attachment; filename=arabic-gedit.png Content-Transfer-Encoding: base64 Content-Description: Gedit rendering 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 X6Vx1xbOhgAAAABJRU5ErkJggg== --=-=-= Content-Type: image/png Content-Disposition: attachment; filename=my_iamge.png Content-Transfer-Encoding: base64 Content-Description: Select Region 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 TkSuQmCC --=-=-=--