Summarized test results:
Bidi algorithm

To run the test, click on the link in the left-most column. To see detailed results for a single test, click on a row and look just above the table. The detailed results show the date(s) the test result was recorded, and the version of the browser tested.

These tests check whether user agents apply the basic Unicode Bidirectional Algorithm (UBA) to text. In particular they test isolation when using RLI, LRI, or FSI, ... PDI, and bracket balancing.

The Unicode Bidirectional Algorithm is responsible for arranging a sequence of mixed direction characters in memory (ordered undirectionally) into a bidirectional visual output. In doing so, it makes certain assumptions about the relationships between adjacent runs of opposite direction text. These assumptions don't always hold, and the Unicode formatting code points (RLI, etc.) provide hints to help in the process.

The formatting characters examined here all come in pairs (RLI/LRI/FSI ... PDI), and prevent the effects of the bidi algorithm interacting with content outside of the text they encompass. As an example: in a left-to-right page, such as this, a sequence of Hebrew or Arabic characters followed in memory by a number will by default position the number to the left of the Hebrew/Arabic, eg. Name & age: القاهرة, 43, rather than ordering items from left to right, as expected, ie. Name & age: القاهرة, 43. In plain text, the formatting characters RLI...PDI can be placed either side of the Arabic text to prevent this issue from arising. They do so by isolating the Arabic text from what surrounds it.

These tests check whether those formatting characters produce the expected effect.

Where the instructions tell you to look for red strokes, these strokes should be clearly discernable behind the black text of the test – ignore any anti-aliasing 'glow'.

Isolating formatting characters

Isolation from following number

Isolation from preceding number

Isolation from following text

Isolation from preceding text

Isolation from surrounding text

Balancing brackets

Paired characters

Unpaired characters


  1. This test is only relevant if the tests in the previous section pass. It checks whether the paired characters become unbalanced when you change one of the pair. The expected result is the default result for unbalanced brackets, so browsers that failed the previous tests are likely to pass this.


Thanks to the following people who submitted results: Lucas Werkmeister.