細
→Unicodeのノウハウ
>Fet-Fe |
>Fet-Fe 細 (→Unicodeのノウハウ) |
||
193行目: | 193行目: | ||
またネネツ語やガナサン語ではˮ(MODIFIER LETTER DOUBLE APOSTROPHE、U+02EE)が"(U+0022)や”(U+201D)の代わりに用いられる。 | またネネツ語やガナサン語ではˮ(MODIFIER LETTER DOUBLE APOSTROPHE、U+02EE)が"(U+0022)や”(U+201D)の代わりに用いられる。 | ||
=== 双方向テキスト === | |||
このwikiは日本語に対応しているので基本的に書字方向はltrとなっている。 | |||
そのため普通にアラビア文字などrtl属性の文字を書くと、ピリオドがラテン文字のものと共通しているためにそれだけ右側に行ってしまう。 | |||
:<span lang="ar">أَقْتُلُ تَاكَاهِيرُو كَارَاسَاوَا.</span> | |||
ピリオドの後ろにRight-to-left mark (RLM, U+200F, <code>&rlm;</code>)やArabic letter mark(ALM, U+061C)を付ければ正しい表示がなされる。 | |||
下の例では、<code><nowiki><span lang="he">אהרוג את טאקאהירו קאראסאווה.&rlm;</span></nowiki></code>と<code><nowiki><span lang="ar">أَقْتُلُ تَاكَاهِيرُو كَارَاسَاوَا.&#x061C;</span></nowiki></code>と記述した。 | |||
:<span lang="he">אהרוג את טאקאהירו קאראסאווה.‏</span> | |||
:<span lang="ar">أَقْتُلُ تَاكَاهِيرُو كَارَاسَاوَا.؜</span> | |||
RLMとALMとの違いは、Unicodeの双方向アルゴリズム<ref>[http://www.unicode.org/reports/tr9/ Unicode® Standard Annex #9 UNICODE BIDIRECTIONAL ALGORITHM]</ref>に関係している。 | |||
Unicodeの各文字にはBidirectional Character Typeが設定されている<ref>[https://www.unicode.org/reports/tr9/#Bidirectional_Character_Types 3.2 Bidirectional Character Types] - Unicode</ref>。 | |||
このうち強い属性としてはL (左から右)、R (右から左)、AL (アラビア文字の右から左)がある。 | |||
RLMはR属性、ALMはAL属性を持つ。 | |||
これらは双方向アルゴリズムに於いて後続する弱い属性の扱いに影響する。 | |||
例えば[https://www.unicode.org/reports/tr9/#W2 W2]という手続きでは、AL属性の文字の後ろにEN (European Number)が後続する場合、そのENはAN (Arabic Number)扱いになるが、R属性に後続するENはENのままとなる。 | |||
AL属性の文字には、アラビア文字の他にもシリア文字、ターナ文字、ハニーフィー・ロヒンギャ文字、ソグド文字などがある<ref>[https://www.unicode.org/Public/UCD/latest/ucd/extracted/DerivedBidiClass.txt DerivedBidiClass.txt] - Unicode</ref>。 | |||
HTMLで同様の動作をさせるには[[#dir属性]]を参照。この方法と組み合わせても良い<ref>[https://www.w3.org/TR/unicode-xml/#Format Format Characters Suitable for Use with Markup] - W3C Working Group Note</ref>。 | |||
=== スペースとゼロ幅文字 === | === スペースとゼロ幅文字 === | ||
224行目: | 247行目: | ||
なおソーステキスト上では<code>ب&#x200D;&#x061C;Toshiba</code>のように[[#双方向テキスト|Arabic letter mark]]と組み合わせている。 | なおソーステキスト上では<code>ب&#x200D;&#x061C;Toshiba</code>のように[[#双方向テキスト|Arabic letter mark]]と組み合わせている。 | ||
これは本来L属性扱いになるゼロ幅接合子をAL属性に変えるためである。 | これは本来L属性扱いになるゼロ幅接合子をAL属性に変えるためである。 | ||
== HTMLとCSSのノウハウ == | == HTMLとCSSのノウハウ == |