<div>Entering data in a computer serves more purpose than simple having it regurgitated to LOOK the same on the screen to a human reader: We would like the computer to actually process it correctly and consistently.</div><div>
<br></div><div>Say a database holds the equivalent of name &quot;Sproket123&quot; but using an R2L alphabet.</div><div><br></div><div>Then thanks to the Unicode bidi algorithm, on the screen a sequence of characters appears to be &quot;Sprocket321&quot;. I could also enter &quot;&lt;RLO&gt;Sprocket123&lt;PDF&gt;&quot;  or &lt;LRO&gt;321tekcorpS&lt;PDF&gt; to get that very same appearance... and quite a few other combinations as well.</div>
<div><br></div><div>To HUMAN readers all of these different combinations are indistinguishable and exactly the same thing, yet to the COMPUTER program algorithms they are all completely different.</div><div><br></div><div>
Software source code, be it in C or any other programming language. Is mostly written by people in a Left to right tradition without ANY need to embed Right to Left characters or any incentive to consider them in our algorithms: a string is just a sequence of characters. Thus consideration of how programming languages should handle directionality overrides is not very important.</div>
<meta http-equiv="content-type" content="text/html; charset=utf-8"><div><br></div><div>OTOH it is of paramount importance in translation files such as the ones submitted to gettext. IMO you really must not consider these two very different file types as the same issue and placing the directionality overrides inside the quotes is IMO the worst possible solution.</div>
<div><br></div><div>Anyway as far as I&#39;m concerned I&#39;ve solved that issue for my own project: It now has the capability to handle R2L correctly under full control of the translator but transparently to the person doing the programming.</div>
<div><br></div><div>My OWN technique for creating translation files consists of placing LRO or RLO at the beginning of each line so that I know exactly what sequences of characters I will be generating and then I remove them before submitting to msgfmt. Other people can obviously use other tactics... Either way I&#39;m finally back onto my bidirectional terminal emulator project :)</div>
<div> </div><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
&gt; While there are multiple ways to achieve the very same appearance on the</blockquote><meta http-equiv="content-type" content="text/html; charset=utf-8"><blockquote><font class="Apple-style-span" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;">&gt; screen, most programs not written with this in mind will consider text with</span></font></blockquote>
<font class="Apple-style-span" face="arial, sans-serif"><blockquote>&gt; different embedded overrides in different places  as completely different</blockquote></font><font class="Apple-style-span" face="arial, sans-serif"><blockquote>
&gt; text... thus resulting in malfunction on things like a database lookup or</blockquote></font><font class="Apple-style-span" face="arial, sans-serif"><blockquote>&gt; even a simple string comparison.</blockquote></font><font class="Apple-style-span" face="arial, sans-serif"><blockquote>
&gt;</blockquote></font><font class="Apple-style-span" face="arial, sans-serif"><blockquote>I might need to ask you to explain that again, it could be the late hour</blockquote></font><font class="Apple-style-span" face="arial, sans-serif"><blockquote>
though ?</blockquote></font><blockquote><br></blockquote><div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "><br></span></div>