Unicode Utilities: BIDI (UBA)

help | character | properties | confusables | unicode-set | compare-sets | regex | bnf-regex | breaks | transform | bidi | bidi-c | idna | languageid

Shows processing by the UBA (Unicode Bidi Algorithm), which is used to display all Unicode Arabic and Hebrew text. For more information, see bidi info.

This Java implementation supports UBA rules and character properties as of Unicode 6.2. To test current UBA rules, or intermediate versions from Unicode 6.3 forward, see the C Reference demo.

Sample      

Paragraph 1

Base Level 0 = LTRheuristic

Source

Memory Position 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Character m a r k 3 . 1 % ‎م‎ ‎ا‎ ‎ر‎ ْ ‎ك‎ 2 . 0 .
Bidi Class L L L L WS EN CS EN ET WS AL AL AL NSM AL WS EN CS EN CS
Rules Applied N1L
W7L
W4EN
W7L
W7L
W5EN
W7L
N2L
W3R
W3R
W3R
W1AL
W3R
W3R
N1R
W2AN
W4AN
W2AN
W6ON
N2L
Resulting Level L0 L0 L0 L0 L0 L0 L0 L0 L0 L0
L1

L1

L1

L1

L1

L1


L2


L2


L2
L0

Reordered

Display Position 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Memory Position 0 1 2 3 4 5 6 7 8 9 16 17 18 15 14 13 12 11 10 19
Character m a r k 3 . 1 % 2 . 0 ‎ك‎ ْ ‎ر‎ ‎ا‎ ‎م‎ .

Fonts and Display. If you don't have a good set of Unicode fonts (and modern browser), you may not be able to read some of the characters. Some suggested fonts that you can add for coverage are: Noto Fonts site, Unicode Fonts for Ancient Scripts, Large, multi-script Unicode fonts. See also: Unicode Display Problems.

Version 3.9; ICU version: 74.1; Unicode/Emoji version: 15.1.0;