From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Face issue -- possible bug Date: Tue, 17 Jul 2018 18:38:47 +0300 Message-ID: <83r2k17tyw.fsf@gnu.org> References: <87o9f6rjn5.fsf@fastmail.fm> <831sc28ub4.fsf@gnu.org> <871sc2wb1d.fsf@fastmail.fm> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: blaine.gmane.org 1531841831 10043 195.159.176.226 (17 Jul 2018 15:37:11 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 17 Jul 2018 15:37:11 +0000 (UTC) Cc: emacs-devel@gnu.org To: Joost Kremers , Kenichi Handa Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jul 17 17:37:07 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ffS2E-0002WM-Te for ged-emacs-devel@m.gmane.org; Tue, 17 Jul 2018 17:37:07 +0200 Original-Received: from localhost ([::1]:60034 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ffS4L-0007dr-TH for ged-emacs-devel@m.gmane.org; Tue, 17 Jul 2018 11:39:17 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59352) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ffS3n-0007dj-PH for emacs-devel@gnu.org; Tue, 17 Jul 2018 11:38:45 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ffS3m-0004Td-OR for emacs-devel@gnu.org; Tue, 17 Jul 2018 11:38:43 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:40361) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ffS3i-0004Mf-38; Tue, 17 Jul 2018 11:38:38 -0400 Original-Received: from [176.228.60.248] (port=1122 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1ffS3h-0002gM-Eu; Tue, 17 Jul 2018 11:38:37 -0400 In-reply-to: <871sc2wb1d.fsf@fastmail.fm> (message from Joost Kremers on Tue, 17 Jul 2018 09:56:14 +0200) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:227499 Archived-At: > From: Joost Kremers > Cc: emacs-devel@gnu.org > Date: Tue, 17 Jul 2018 09:56:14 +0200 > > > What does Emacs say if you go to the character and type "C-u C-x > > =", > > when the problematic font is used? > > Well d'uh, I could have thought of that myself... Anyway, with > Linux Libertine O (which displays the character incorrectly), `C-u > C-x =` gives: > > ============================== > > position: 182 of 268 (68%), column: 5 > character: n (displayed as n) (codepoint 110, #o156, > #x6e) > preferred charset: ascii (ASCII (ISO646 IRV)) > code point in charset: 0x6E > script: latin > syntax: w which means: word > category: .:Base, L:Left-to-right (strong), a:ASCII, > l:Latin, r:Roman > to input: type "C-x 8 RET 6e" or "C-x 8 RET LATIN > SMALL LETTER N" > buffer code: #x6E > file code: #x6E (encoded by coding system utf-8-unix) > display: composed to form "n̩" (see below) > > Composed with the following character(s) "̩" using this font: > xft:-PfEd-Linux Libertine > O-normal-normal-normal-*-21-*-*-*-*-0-iso10646-1 > by these glyphs: > [0 1 0 2420 13 0 13 10 1 nil] > [0 1 809 745 0 -9 -6 -1 5 [-2 -1 0]] > > Character code properties: customize what to show > name: LATIN SMALL LETTER N > general-category: Ll (Letter, Lowercase) > decomposition: (110) ('n') > > There are text properties here: > fontified t > wrap-prefix "" > > ============================== > > And with DejaVu Sans Mono (displaying the character correctly): > > ============================== > > > position: 182 of 268 (68%), column: 5 > character: n (displayed as n) (codepoint 110, #o156, > #x6e) > preferred charset: ascii (ASCII (ISO646 IRV)) > code point in charset: 0x6E > script: latin > syntax: w which means: word > category: .:Base, L:Left-to-right (strong), a:ASCII, > l:Latin, r:Roman > to input: type "C-x 8 RET 6e" or "C-x 8 RET LATIN > SMALL LETTER N" > buffer code: #x6E > file code: #x6E (encoded by coding system utf-8-unix) > display: composed to form "n̩" (see below) > > Composed with the following character(s) "̩" using this font: > xft:-PfEd-DejaVu Sans > Mono-normal-normal-normal-*-15-*-*-*-m-0-iso10646-1 > by these glyphs: > [0 1 110 81 9 1 8 8 5 nil] > [0 1 809 689 0 4 6 -1 5 [-10 -1 0]] > > Character code properties: customize what to show > name: LATIN SMALL LETTER N > general-category: Ll (Letter, Lowercase) > decomposition: (110) ('n') > > There are text properties here: > fontified t > wrap-prefix "" > > ============================== > > The only difference I notice is with the numbers following "by > these glyphs", but I have no idea what those numbers mean. (If you _really_ want to know what they mean, see the description of GLYPH in the doc string of composition-get-gstring.) Note how the first glyph of the composition data with the "bad" font has zero as its 3rd component, whereas the "good" font has 110 there, which is the codepoint of 'n'. Having zero there is not really normal, I think. I downloaded the Libertine O font and tried that on MS-Windows. I don't see this problem there with that font. So based on that, and on the fact that another font displays this combination correctly on your system, my primary suspect is neither Emacs nor the font, but the shaping engine we use to compose characters. On GNU/Linux we use libm17n-flt as the shaping engine, so the first step is to make sure you have its latest version installed. I think the latest version is only available in the CVS repository, which you can access through Savannah: http://savannah.nongnu.org/projects/m17n/ If installing the latest version doesn't help, it might be a bug in libm17n-flt, so I'm CC'ing Handa-san who might be able to help fix this.