Unicode Utilities: BIDI (UBA)

Unmarked properties are from Unicode V15.1.0; the beta properties are from Unicode V16.0.0β. For more information, see Unicode Utilities Beta.

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 = LTRexplicit

Source

Memory Position 0 1 2 3 4 5
Character ۳ ‎ب‎ ‎ه‎ ‎م‎ ‎ن‎
Bidi Class EN WS AL AL AL AL
Rules Applied W7L
N2L
W3R
W3R
W3R
W3R
Resulting Level L0 L0
L1

L1

L1

L1

Reordered

Display Position 0 1 2 3 4 5
Memory Position 0 1 5 4 3 2
Character ۳ ‎ن‎ ‎م‎ ‎ه‎ ‎ب‎

Paragraph 2

Base Level 0 = LTRexplicit

Source

Memory Position 0 1 2 3 4 5 6 7
Character ٣ ‎ن‎ ‎و‎ ‎ف‎ ‎م‎ ‎ب‎ ‎ر‎
Bidi Class AN WS AL AL AL AL AL AL
Rules Applied N1R
W3R
W3R
W3R
W3R
W3R
W3R
Resulting Level

L2

L1

L1

L1

L1

L1

L1

L1

Reordered

Display Position 0 1 2 3 4 5 6 7
Memory Position 7 6 5 4 3 2 1 0
Character ‎ر‎ ‎ب‎ ‎م‎ ‎ف‎ ‎و‎ ‎ن‎ ٣

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; Unicodeβ version: 16.0.0;