This report is a followup to bug#35721[1] focussing only on the alternating composition of Arabic characters when editing seemingly unrelated parts of the buffer. [1]: https://debbugs.gnu.org/35721 Observe: 0. emacs -Q 1. C-u C-\ arabic RET 2. a ; C-a C-u C-x = --8<---------------cut here---------------start------------->8--- position: 146 of 147 (99%), column: 0 character: ش‎ (displayed as ش‎) (codepoint 1588, #o3064, #x634) charset: unicode (Unicode (ISO10646)) code point in charset: 0x0634 script: arabic syntax: w which means: word category: .:Base, R:Right-to-left (strong), b:Arabic to input: type "a" with arabic input method buffer code: #xD8 #xB4 file code: #xD8 #xB4 (encoded by coding system utf-8-unix) display: composed to form "ش" (see below) Composed using this font: xft:-PfEd-DejaVu Sans Mono-normal-normal-normal-*-15-*-*-*-m-0-iso10646-1 by these glyphs: [0 0 0 3186 9 -1 9 9 1 nil] Character code properties: customize what to show name: ARABIC LETTER SHEEN general-category: Lo (Letter, Other) decomposition: (1588) ('ش') There are text properties here: fontified nil --8<---------------cut here---------------end--------------->8--- 3. C-e RET The sheen is correctly shaped in its initial form: