<div dir="rtl"><div dir="ltr">For the placeholder of special characters (<U+<span>XXXX</span>>s), the bidirectional category of placeholders should match the bidirectional category of the original character. Although I guess almost all of those special characters which are represented by <U+<span>XXXX</span>> belongs to Boundary_Neutral class.<br>
<br>For example, here you can see what has happened when I've replaced 2 spaces with Zero-width non-joiners:</div><div dir="ltr"><br></div><div style="text-align:left"><img src="cid:ii_144a198c1e655274" alt="تصویر درون برنامهای 1" width="420" height="111"><br>
</div><div dir="ltr"><br></div><div dir="ltr">Here is the textual version, which is rendered correctly in my browser (Chrome 33):</div><div><br><div style="text-align:left"><span style="background-color:rgb(32,18,77)"><font color="#ffffff"> (متن راست به چپ) </font></span></div>
</div><div style="text-align:left"><span style="background-color:rgb(32,18,77)"><font color="#ffffff"> (متن راستبهچپ) </font></span></div><div><br></div><div dir="ltr">
Properties of U+200C: http://<span>unicode</span>.org/<span>cldr</span>/utility/character.<span>jsp</span>?a=200C</div><div dir="ltr"><br></div><div dir="ltr">I'm interested in working on it and submitting a pull request, if you accept this semi-feature-request and specify which solution is preferred. I have a workaround suggestion: replacing them with some symbolic characters, for example ⦿ for null, ↩︎ for line separator, ╵ for zero-width space, ╽ for zero-width non-joiner, ╈ zero-width joiner, ...<br>
<br>Best regards</div><div dir="ltr">Reza</div>
</div>