-DJAVABIDI
This system property specifies whether bidirectional layout transformations are run.
- JAVABIDI=[S(<TOSHNALEYZ>)],[U(<TOSHNALEYZ>)],[C(<codepage1;codepage2;...>)]
-
The default value for the JAVABIDI system property is NO, which specifies that no bidirectional layout transformations are run.
When the JAVABIDI system property is not set to NO, its value can contain 1 - 3 parts. Each part starts with a letter identifier followed by a set of values within parentheses.
The letter identifiers are as follows:- S: the single-byte character set (SBCS) part, which describes the bidirectional attributes of the SBCS data that is consumed or produced by the conversions. This part designates the data as it is stored outside the Java™ runtime environment.
- U: the Unicode part, which describes the bidirectional attributes of the Unicode data that is consumed or produced by the conversions.
- C: the CodePage part, which specifies one or more encodings. If you specify this part, only data with encodings that are listed in this part are submitted to the bidirectional layout transformation. If you omit this part, the layout transformations are run for all encodings except Cp850.
Note: Applications should not try to modify the value of the JAVABIDI property after the initialization of the Java virtual machine (VM). For performance reasons, VM implementations might check the value of the JAVABIDI property only at start-up time, so later changes have no effect.
S and U Parts
Each part has the following
format:
part_id(TOSHNALEYZ) Where
part_id is the part identifier, either S or
U. TOSHNALEYZ is a list of symbols, each of which is
replaced in the command by a value, as described in the following table.Notes:
- The part identifier and the values are case-sensitive.
- You can use a hyphen ("-") in place of a symbol to use the default value for that symbol.
| Symbol | Meaning | Valid values and their meaning | Default value | Language applicability |
|---|---|---|---|---|
| T | Text type |
I (implicit)
V (visual) |
V (for S part)
I (for U part) |
Arabic and Hebrew |
| O | Orientation |
L (left to right)
R (right to left) C (contextual left to right) D (contextual right to left) |
L | Arabic and Hebrew |
| S | Swapping |
Y (yes)
N (no) |
N (for S part)
Y (for U part) |
Arabic and Hebrew |
| H | Text shaping |
N (nominal)
S (shaped) I (initial) M (middle) F (final) B (isolated) |
S (for S part)
N (for U part) |
Arabic only |
| N | Numerals |
N (nominal)
H (national) C (contextual) |
N | Arabic only |
| A | Bidirectional algorithm |
U (Unicode)
R (roundtrip) |
U | Arabic and Hebrew |
| L | Lam-Alef shaping option |
N (Near)
B (At Begin) E (At End) A (Auto) R (Resize) |
A | Arabic only |
| E | Seen Tail shaping option |
B (At Begin)
A (Auto) N (Near) E (At End) |
A | Arabic only |
| Y | Yeh-Hamza shaping option |
E (At End)
A (Auto) N (Near) O (One cell) B (At Begin) |
A | Arabic only |
| Z | Tashkeel shaping option |
A (Auto)
B (At Begin) E (At End) W (With Width) Z (Zero Width) K (Keep) |
A | Arabic only |
C Part
This part has the following
format:
C(codepage1;codepage2;...)The
variables codepage1 and codepage2 are one of the following
bidirectional code pages.
| Code page | Canonical name for NIO | Language |
|---|---|---|
| Cp420 | IBM-420 | Arabic |
| Cp424 | IBM-424 | Hebrew |
| Cp856 | IBM-856 | Hebrew |
| Cp862 | IBM-862 | Hebrew |
| Cp864 | IBM-864 | Arabic |
| Cp867 | IBM-867 | Hebrew |
| Cp1046 | IBM-1046 | Arabic |
| Cp1255 | windows-1255 | Hebrew |
| Cp1256 | windows-1256 | Arabic |
| ISO8859_6 | ISO8859_6 | Arabic |
| ISO8859_8 | ISO8859_8 | Hebrew |
| MacArabic | MacArabic | Arabic |
| MacHebrew | MacHebrew | Hebrew |
Examples
JAVABIDI=U(ILYNNUNNNK),S(VLNSNUNNNK),C(Cp420)JAVABIDI=C(Cp420),S(VLNSNUNNNK),U(ILYNNUNNNK)The
order of the part specifications is not
significant.JAVABIDI=U(ILYNNUNNNK),S(VLNSN--NK),C(Cp420;IBM-420)The hyphens
in the S part represent default values for the corresponding symbols.
JAVABIDI=C(Cp420)Because both the S and the
U parts are omitted, those parts receive default values for all the
symbols.