「双方向テキスト」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎概念: 一部飜訳)
(→‎概念: 飜訳)
6行目: 6行目:
 
; テキストの方向: テキスト編集では、テキストの方向を設定することで、テキストナビゲーション、テキスト選択、テキスト挿入の変更など、入力されたテキストとプログラムのやり取りが変更されます。
 
; テキストの方向: テキスト編集では、テキストの方向を設定することで、テキストナビゲーション、テキスト選択、テキスト挿入の変更など、入力されたテキストとプログラムのやり取りが変更されます。
 
;テキストアライメント: テキストアライメントは、テキストの表示方法とスタイルを変更するだけです。
 
;テキストアライメント: テキストアライメントは、テキストの表示方法とスタイルを変更するだけです。
  +
; フェイク Bidi: RTL 文脈を模倣して、完全に反転した英文を表示する偽ロケールです。これは、RTL 言語を話さない開発者が、RTL の問題に対処するのに役立ちます。例えば
; Fake Bidi: a fake locale displaying completely reversed English sentences to mimic a RTL context. This helps developers who do not speak a RTL language to deal with RTL issues. For example: {{bc|This English sentence contains SDROW CIBARA EMOS and ends with English words.}}
 
  +
: {{bc|This English sentence contains SDROW CIBARA EMOS and ends with English words.}}
; Poor man's bidi mode: automatic visual text order right-to-left input in normal terminal.
 
  +
; プアマンズ bidi モード: 通常の端末で視覚的な文字列を右から左へ自動入力するモード。
; Logical navigation: words are traversed as they are read.
 
  +
; 論理的なナビゲーション: 単語を読みながらトラバースされます。
; Visual navigation: words are traversed as they are displayed. [https://imgur.com/a/lfQV88E This GIF] demonstrates the difference between the two.
 
  +
; ビジュアルナビゲーション: 単語が表示されながらトラバースされます。[https://imgur.com/a/lfQV88E この GIF] は、この 2 つの違いを示しています。
   
  +
論理的なナビゲーションは、Bidi を完全にサポートするためにプログラムが実装すべき正しいナビゲーションの方法です。にもかかわらず、この 2 つの間のスイッチがあることが望ましいのです。
Logical navigation is the correct way of navigation that programs should implement to fully support Bidi. Despite that, it would be preferable to have a switch between the two.
 
; [[Wikipedia:Bidirectional_text#Unicode_bidi_support|Unicode support]]: there are three main Unicode control characters: [[Wikipedia:RLM]], [[Wikipedia:LRM]], [[Wikipedia:ALM]].
 
   
  +
; [[Wikipedia:Bidirectional_text#Unicode_bidi_support|Unicode support]]: Unicode 制御文字は主に 3 つあります。[[Wikipedia:RLM]]、[[Wikipedia:LRM]]、[[Wikipedia:ALM]] です。
; [https://www.unicode.org/reports/tr9/ Bidirectional Algorithm]: is the set of rules applied to display text in the correct order.
 
   
  +
; [https://www.unicode.org/reports/tr9/ 双方向アルゴリズム]: テキストを正しい順序で表示するために適用される規則の集合である。
{{AUR|fribidi-git}} is an open source implementations of Bidi Algorithm. {{AUR|python-bidi}} is a python library for related functions.
 
  +
  +
{{AUR|fribidi-git}} は Bidi アルゴリズムのオープンソース実装です。{AUR|python-bidi}} は関連する関数のための Python ライブラリです。
   
 
== サポート ==
 
== サポート ==

2023年2月17日 (金) 13:54時点における版

双方向テキスト(そうほうこうテキスト、英: bi-directional text)とは、右から左(RTL)と左から右(LTR)の2つの方向性を持つテキストです。

概念

テキストの方向
テキスト編集では、テキストの方向を設定することで、テキストナビゲーション、テキスト選択、テキスト挿入の変更など、入力されたテキストとプログラムのやり取りが変更されます。
テキストアライメント
テキストアライメントは、テキストの表示方法とスタイルを変更するだけです。
フェイク Bidi
RTL 文脈を模倣して、完全に反転した英文を表示する偽ロケールです。これは、RTL 言語を話さない開発者が、RTL の問題に対処するのに役立ちます。例えば
This English sentence contains SDROW CIBARA EMOS and ends with English words.
プアマンズ bidi モード
通常の端末で視覚的な文字列を右から左へ自動入力するモード。
論理的なナビゲーション
単語を読みながらトラバースされます。
ビジュアルナビゲーション
単語が表示されながらトラバースされます。この GIF は、この 2 つの違いを示しています。

論理的なナビゲーションは、Bidi を完全にサポートするためにプログラムが実装すべき正しいナビゲーションの方法です。にもかかわらず、この 2 つの間のスイッチがあることが望ましいのです。

Unicode support
Unicode 制御文字は主に 3 つあります。Wikipedia:RLMWikipedia:LRMWikipedia:ALM です。
双方向アルゴリズム
テキストを正しい順序で表示するために適用される規則の集合である。

fribidi-gitAUR は Bidi アルゴリズムのオープンソース実装です。{AUR|python-bidi}} は関連する関数のための Python ライブラリです。

サポート

In order for a program to fully support Bidi text, it must have:

Letter rendering (RTL)
able to correctly apply letter shaping and ligatures. See Complete Text Layout. This is often referred to shortly as RTL support.
Switch text alignment (Bidi)
E.g: Firefox Ctrl+Shift+X shortcut.
Logical navigation
in a RTL text, with RTL text alignment, arrow keys should not cause reversed navigation.
Tag App Date RTL Bidi Nav Notes
browser chromium 2022-08-28 Yes No Yes Chromium is the engine of ElectronJS. Fixing this should resolve Electron Apps too.
browser firefox 2022-09-01 Yes No No
browser qtwebbrowser 2022-11-01 Yes No
browser webkit 2022-11-01 Yes No
editor AbiWord 2007-12-06 Yes
editor emacs 2019-06-31 Yes No With extension
editor kate 2016-06-20 Yes No
editor LibreOffice Yes Yes Yes fully supported. Enabled using Complex Text Layout from settings.
editor neovim 2014-04-17 No No see :set arabic
editor texworks 2009-03-01 Yes No
editor vim 2015-08-19 No No see :set arabic
other groff 2005-12-02 No No
other Wikipedia:HTML Yes Yes Yes
other latex Yes Yes Using LuaTeX or XeLaTeX with polyglossia
other wine 2002-04-21 Yes No
terminal alacritty 2017-07-15 No
terminal dvtm 2019-10-12 No
terminal gedit Yes No For Gedit <= 2.1, workaround by extension.
terminal irssi 2019-10-12 No
terminal kitty 2019-11-01 No
terminal konsole Yes No
terminal libvte Yes No including libvte-based like Gnome, sakura, xfce4...
terminal mltermAUR Yes No
terminal neatvi-gitAUR 2019-07-04 No
terminal pymux 2019-10-12 No
terminal qterminal Yes No
terminal radare2 2015-02-03 No
terminal tmux 2019-10-12 No won't fix
terminal wezterm 2021-05-11 No
terminal xstAUR 2018-10-26 No

トラブルシューティング

Verify UTF-8 Encoding is properly configured first. Make sure you install the fonts corresponding to your language: Arabic, Persian, Hebrew. For some terminal, (bicon-gitAUR) is required to properly display Arabic and Hebrew text.

一時的な回避策

参照

内部リンク

外部リンク