[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#36030: Changing the region or the point changes the way characters a
From: |
Clément Pit-Claudel |
Subject: |
bug#36030: Changing the region or the point changes the way characters are displayed |
Date: |
Fri, 31 May 2019 15:28:46 -0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0 |
On 2019-05-31 15:02, Eli Zaretskii wrote:
>> Cc: 36030@debbugs.gnu.org
>> From: Clément Pit-Claudel <cpitclaudel@gmail.com>
>> Date: Fri, 31 May 2019 13:06:32 -0400
>>
>>> This is a duplicate of bug#35811, AFAIU.
>>
>> Agh, sorry for the noise. I should note, though, that the problem isn't
>> specific to Arabic: I see it with many other scripts.
>
> Which ones? I only see this on the Arabic line, at least in "emacs -Q".
I see it with Hebrew as well, but not in emacs -Q. With this string:
'ՙա-ևא-תװ-ײؠ-يٮ-ٯٱ-ۓەۥ-ۦۮ-ۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴ-ߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠ-ࢴࢶ'
(taken from a regular expression)
if I place the point at the beginning of the line, I see this:
position: 21767 of 29526 (74%), column: 25
character: ת (displayed as ת) (codepoint 1514, #o2752, #x5ea)
charset: unicode-bmp (Unicode Basic Multilingual Plane
(U+0000..U+FFFF))
code point in charset: 0x05EA
script: hebrew
syntax: w which means: word
category: .:Base, R:Right-to-left (strong)
to input: type "C-x 8 RET 5ea" or "C-x 8 RET HEBREW LETTER TAV"
buffer code: #xD7 #xAA
file code: #xD7 #xAA (encoded by coding system utf-8-unix)
display: by this font (glyph code)
xft:-GNU -FreeSerif-normal-normal-normal-*-16-*-*-*-*-0-iso10646-1 (#x587)
Character code properties: customize what to show
name: HEBREW LETTER TAV
general-category: Lo (Letter, Other)
decomposition: (1514) ('ת')
There are text properties here:
face font-lock-string-face
fontified t
But if I place it at the ܒ, then run (save-excursion (goto-char <position of
the beginning of the string>) (what-cursor-position t)) I see xft:-GNU
-FreeSans-normal-normal-normal-*-16-*-*-*-*-0-iso10646-1 (#x509) instead.
Moving the point to a different line, the font changes again, this time to
xft:-GNU -FreeMono-normal-normal-normal-*-16-*-*-*-m-0-iso10646-1 (#x4FF)
The rest of the what-cursor-position buffer is unchanged.
With the string 'ਸ-ਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલ-ળવ-હઽૐૠ-ૡૹଅ-ଌଏ-ଐଓ-ନପ-ରଲ-ଳଵ-ହଽଡ଼-ଢ଼ୟ-',
it is enough to just resize the frame to change from xft:-GNU
-FreeSans-normal-normal-normal-*-16-*-*-*-*-0-iso10646-1 (#x663) to xft:-GNU
-FreeSerif-normal-normal-normal-*-16-*-*-*-*-0-iso10646-1 (#x7F2) (but I had to
set a timer to investigate this one, because moving the point reverted the font
changes caused by resizing the frame.
Additionally, this seems to be linked to face properties. In the
what-cursor-position buffer, I see this:
ਸ (displayed as ਸ) (codepoint 2616, #o5070, #xa38)
^ using one font.
^ using a different font, with font-lock-string-face on it.
… and moving around the what-cursor-position buffer changes the second one, but
not the first one.
Clément.