双方向テキスト

提供: ArchWiki
ナビゲーションに移動 検索に移動

双方向テキスト(そうほうこうテキスト、英: 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 ライブラリです。

サポート

プログラムが Bidi テキストを完全にサポートするためには、以下の機能を持っている必要があります。

レターレンダリング (RTL)
文字の整形や合字を正しく適用することができる。Complete Text Layout を参照。これを略して RTL 対応と呼ぶことが多い。
テキストアライメントを切り替える(Bidi)
例 Firefox Ctrl+Shift+X ショートカット。
論理的なナビゲーション
RTL テキストでは、RTL テキストアライメントで、矢印キーは逆ナビゲーションが発生しないようにする必要があります。
Tag App Date RTL Bidi Nav Notes
browser chromium 2022-08-28 Yes No Yes Chromium は ElectronJS のエンジンです。これを修正することで、Electron Apps も解決するはずです。
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 extension を使用
editor kate 2016-06-20 Yes No
editor LibreOffice Yes Yes Yes 完全対応しています。設定から Complex Text Layoutで有効化します。
editor neovim 2014-04-17 No No :set arabic を参照
editor texworks 2009-03-01 Yes No
editor vim 2015-08-19 No No :set arabic を参照
other groff 2005-12-02 No No
other Wikipedia:HTML Yes Yes Yes
other latex Yes Yes LuaTeX または 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 Gedit <= 2.1 の場合、extension で回避可能です。
terminal irssi 2019-10-12 No
terminal kitty 2019-11-01 No
terminal konsole Yes No
terminal libvte Yes No Gnome、sakura、xfce4 などの libvte ベースのものを含む
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 修正されません
terminal wezterm 2021-05-11 No
terminal xstAUR 2018-10-26 No

トラブルシューティング

まず、UTF-8 エンコーディングが適切に設定されていることを確認してください。あなたの言語に対応したフォントがインストールされていることを確認してください。Arabicペルシア文字ヘブライ文字 のように、あなたの言語に対応したフォントがインストールされていることを確認してください。一部の端末では、アラビア語やヘブライ語のテキストを正しく表示するために (bicon-gitAUR) が必要です。

一時的な回避策

参照

内部リンク

外部リンク

翻訳ステータス: このページは en:Bidirectional text の翻訳バージョンです。最後の翻訳日は 2023-04-05 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。