Right-to-left mark
The right-to-left mark (RLM) is a non-printing character used in the computerized typesetting of bi-directional text containing mixed left-to-right scripts (such as English and Cyrillic) and right-to-left scripts (such as Persian, Arabic, Syriac and Hebrew). It is used to change the way adjacent characters are grouped with respect to text direction.
Unicode
In Unicode, the RLM character is encoded at U+200F right-to-left mark (HTML: ‏
‏
).
In UTF-8 it is E2 80 8F. Usage is prescribed in the Unicode Bidirectional Algorithm.
Example of use in HTML
Suppose the writer wishes to inject a run of Arabic or Hebrew (i.e. right-to-left) text into an English paragraph, with an exclamation point at the end of the run on the left hand side. "I enjoyed staying -- really! -- at his house." With the "really!" in Hebrew renders as follows:
I enjoyed staying -- באמת! -- at his house.
With an RLM mark entered in the HTML after the exclamation mark, it renders as follows:
I enjoyed staying -- באמת! -- at his house.
[Standards-compliant browsers will render the exclamation mark on the right in the first example, and on the left in the second]
This happens because the browser recognizes that the paragraph is in a LTR script (Latin), and applies punctuation, which is neutral as to its direction, in coordination with the more prominent (paragraph level) adjacent text. The RLM causes the punctuation to be adjacent to only RTL text - the Hebrew and the RLM mark - and hence be positioned as if it were in right-to-left text, i.e., to the left of the preceding text.