* 仕様書

[REFS[
- [3] [CITE[[[The Unicode Standard]], Version 13.0 - ch23.pdf]], [TIME[2020-03-09T17:53:52.000Z]], [TIME[2020-12-13T07:04:21.399Z]] <https://www.unicode.org/versions/Unicode13.0.0/ch23.pdf#G16327>
- [1] [CITE@en-us[UAX #9: Unicode Bidirectional Algorithm]], [TIME[2020-03-06T22:23:12.000Z]], [TIME[2020-12-13T07:03:33.128Z]] <https://unicode.org/reports/tr9/#Directional_Formatting_Characters>
- [2] [CITE@en-us[UAX #44: Unicode Character Database]], [TIME[2020-03-06T22:23:11.000Z]], [TIME[2020-12-13T07:04:05.388Z]] <https://www.unicode.org/reports/tr44/#Bidi_Control>
]REFS]

* 意味

[4] 
[DFN[bidirectional ordering controls]]
である[[文字]]は、
[CITE[The Unicode Standard]]
で規定されています。
その用途は 
[[UAX #9]]
に委ねられています。
[SRC[>>3]]

[5] 
[[bidirectional ordering controls]]
は、[[書式制御文字]]です。

[6] 
[[UCD]]
には[[特性][文字特性]]
[DFN[[CODE[Bidi_Control]]]]
があります。
[[UAX #9]]
で使われる[[書式制御文字]]を表すと説明されています。
[SRC[>>2]]

[7] 
[[bidirectional ordering controls]]
と
[CODE[Bidi_Control]]
は[[文字の集合]]として一致しているようです。

[REFS[
- [14] [[bidirectional ordering controls]]
の一覧
<https://chars.suikawiki.org/set/%24unicode%3Abidirectional-ordering-controls>
- [15] [CODE[Bidi_Control]]
の一覧
<https://chars.suikawiki.org/set/%24unicode%3ABidi_Control>
]REFS]

* 構文

[10] 
[CODE(charname)@en[LRE]],
[CODE(charname)@en[RLE]],
[CODE(charname)@en[LRO]],
[CODE(charname)@en[RLO]]
は、
通常
[CODE(charname)@en[PDF]]
と[[組にして使います][paired stateful controls]]。
[SRC[>>3]]

[11] 
[CODE(charname)@en[LRI]],
[CODE(charname)@en[RLI]],
[CODE(charname)@en[FSI]]
は、
通常
[CODE(charname)@en[PDI]]
と[[組にして使います][paired stateful controls]]。
[SRC[>>3]]

[12] 
[CODE(char)[U+200E]] [CODE(charname)@en[LEFT-TO-RIGHT MARK]],
[CODE[U+200F]] [CODE(charname)@en[RIGHT-TO-LEFT MARK]],
[CC[U+061C]] [CN[ARABIC LETTER MARK]]
は、
単独で用います。
[[零幅]]で不可視ですが、
[[強い方向性]]を持ちます。
[SRC[>>3]]

;; [13] 不可視で文脈を提供するという点では
[CODE(charname)@en[ZWJ]],
[CODE(charname)@en[ZWNJ]]
と似ています。

*処理

[8] 
[[整列]]や[[検索]]などの[[レイアウト]]以外の[[テキスト]]処理では、
無視する[RUBYB[べき][should]]です。
[SRC[>>3]]

[9] 
ただし、[[テキスト]]内容を編集する処理にあっては、
これらの[[文字]]を正しく維持し、
組になっているものは適切に配置し、
レイアウトや [[bidi]] テキストの解釈を壊さないようにしなければなりません。
[SRC[>>3]]

* レンダリング

[16] [CITE@ja-jp[OpenType development (LEGACY INFORMATION) - Typography | Microsoft Docs]], [[nihar]], [TIME[2022-08-27T06:51:43.000Z]] <https://docs.microsoft.com/ja-jp/typography/develop/otdevinfo#suggested-glyphs-for-complex-scripts>

* [CC[U+061C]] [CN[ARABIC LETTER MARK]]

[17] [CITE@ja[Microsoft Word - 11-005-arabic-letter-mark.doc - 11005-arabic-letter-mark.pdf]], [TIME[2011-01-18T00:58:46.000Z]], [TIME[2024-07-08T01:19:22.570Z]] <http://www.unicode.org/L2/L2011/11005-arabic-letter-mark.pdf>

[18] [CITE@ja[16306-alm-script-prop.pdf]], [TIME[2016-10-28T21:16:26.000Z]], [TIME[2024-07-08T01:19:29.334Z]] <https://www.unicode.org/L2/L2016/16306-alm-script-prop.pdf>

* メモ