Subject: bug#54325: Emacs Shows the ZWNJ character (U+200C) as a space character

From: Eli Zaretskii <[email-masked]>
Date: Thu, 10 Mar 2022 19:48:07 +0200

[PLEASE keep the bug address on the CC list.]

> From: hossein valizadeh <[email-masked]>
> Date: Thu, 10 Mar 2022 20:53:49 +0330
> 
> > Also, does this happen in "emacs -Q"?
> Yes, it happens ...
> 
> این‌ها
> 
> ماه‌ها
> 
> رفته‌ای

OK, I see it now, thanks.

I think what you want is to customize the variable
arabic-shaper-ZWNJ-handling to the value 'as-space or maybe even
'absorb.  Then the display will be as you expect.

FTR: Emacs 27 had a bug in the character composition/shaping rules for
the Arabic script, and on my system the text you sent is displayed in
Emacs 27 with glitches (when I move the cursor across the ZWNJ
character, it leaves artifacts behind).  Emacs 28 fixes that problem,
and that's why you see the difference.  By default, Emacs isn't
supposed to display ZWNJ specially in Arabic shaping, but the above
variable can change that, so I suggest you use it.

Bottom line: I don't think there's a bug here.  You just don't like
the default behavior, but an optional behavior like you want is
available.