vim-jp / vimdoc-ja / rileft

rileft - Vim日本語ドキュメント

メインヘルプファイルに戻る English | 日本語 | 編集
rileft.txt    For Vim バージョン 9.1.  Last change: 2022 Oct 12


                VIMリファレンスマニュアル    by Avner Lottem
                                             updated by Nadim Shaikli


Vimにおける "右左" 書きとヘブライマッピング                     rileft


これらの機能はAvner Lottemによって作成された
    E-mail: alottem@iil.intel.com
    Phone:  +972-4-8307322

                                                                E26
{Vim が +rightleft 機能付きでコンパイルされたときのみ有効}


はじめに
------------------
アラビア語、ペルシア語、ヘブライ語など、いくつかの言語では文章を右から左へ表示
する。これらの言語で書かれたファイルは普通に記録され、右から左へ表示するのはグ
ラフィックエンジンの機能である(Unicodeを利用して)。右左指向ファイルでは文字は
画面の右から左へ書かれる。

双方向性(Bidirectionality 略して bidi)はUnicodeがこれらの言語を扱うために提供
しているものである。双方向性はユーザーが "右から左" のテキストと "左から右" の
テキストを同時に同じウィンドウで適切に表示できるようにする。Vim は現在のとこ
ろ、簡素でいるために、双方向性を提供していない。単に "右から左" 言語を表示、入
力、使用する機能を提供している。古い混在方法、文字単位 (または複数文字) で表示
する方向を決める方法はサポートされていない。そして、この種のサポートは既存のエ
ディタに簡単に加えることはできない (そしてUnicodeでも承認されていない)。

多くの人々は右から左へモードを使用しないコードで作業しており、この機能はいくつ
かの場合で動作しない。不具合があって修正したらどう動作するのか説明できるなら、
GitHubにIssueを作ってほしい、bug-reports を参照。


概要
----------
o  "左右" ファイルの編集はオリジナルのVimと同じで、変更はない

o  "右から左" ウィンドウでファイルを閲覧、編集できる。ファイルはウィンドウ単位
   で指向方向を選択できるので、同じファイルを "右左" と "左右" ウィンドウで同
   時に閲覧することが可能である。(これは表示方向の違う複数の言語が混在している
   時に便利である)

o  オリジナルのVimとの互換性。ほとんど全ての機能が "右左" モードでも使用できる。
   (下記「バグ」の章を参照)

o  反転入力モードからの復帰がファイルの正しい場所で行われる(可能な限り)。

o  "右左" 機能を使用するのに特別な端末を必要としない。"右左" 拡張機能は完全に
   ハードウェア非依存である。

o  たくさんの言語が "右左" 言語サポートを必要とする。このサポートに手を加え他の
   "右左" 言語(アラビア語など)に対応させるのは簡単だろう。文字エンコードに合わ
   せてキーボードマッピングを変更したり、ほんの少しコードに手を加えればいい。
   現在はこれらarabic.txtfarsi.txthebrew.txtの言語サポートを含んでい
   る。


重要
--------------

o  機能を有効にするために
   -----------
   + 'rightleft' ('rl') ウィンドウを "右から左" 指向に設定する。
   + 'delcombine' ('deco')、真偽値、UTF-8 でエンコードされた言語を編集している
     ならば、先行する文字に重ね合わせられた合成文字を削除することを許可する(い
     くつかの言語ではこれが必要である)。
   + 'rightleftcmd' ('rlc') "右から左" 指向で便利なように、あるモード (検索な
     ど) のコマンドラインの入力方法を設定する。

o  後方タイピング                                               ins-reverse
   --------------

   全面的に 'rightleft' オプションを使う代わりに、もう一つ逆方向に挿入する方法
   がある。'revins' (逆挿入)オプションが有効になっていると、挿入した文字が後方
   に流れていく。"右左" 方向のテキストを入力するのに使える。キャラクタを挿入す
   ると、カーソルはその場から動かずテキストが右へ流れていく。<BS>はカーソルの
   下の文字を削除する。CTRL-WCTRL-Uも反対の方向へ働く。'backspace' オプショ
   ンが指定されているかにかかわらず<BS>CTRL-WCTRL-Uは入力の開始点や行末で
   停止しない。

    (まだ)逆置換モードは実装されていない。

    'showmode' オプションが設定されていると、逆挿入モードが有効になっている時
    には状態表示行(ステータスライン)に "-- REVERSE INSERT --" が表示されるだろ
    う。

o   "右左" ウィンドウでの貼り付け
    -----------------------------

    マウスでカットした文章を "右左" ウィンドウに貼り付けると、"左右" バッファ
    からカットされたバッファの文字を "右左" ファイルへ入力することになるので、
    テキストは反転される。これを避けるには貼り付け前に 'revins' を切り替える。

バグ
----
o  "右左" ウィンドウではCTRL-ACTRL-X(足し算、引き算)コマンドは正しく働かな
   い。

o  逆挿入とコマンドラインでの "右左" モードはサポートされない。しかしながらマッ
   ピング、短縮入力、検索、コマンドラインでの "左右" 入力が可能なので、エディ
   タの機能性はそこなわれない

o  "右左" モードでは多少遅くなる。"右左" の動作は端末制御ではなくVimでのエミュ
   レーションによって実現されているため。

o  'rightleft' と 'revins' が両方とも有効になっていると: 'textwidth' が動作し
   ない。行が折り返されない; 長い行が作成される。

o  双方向 (bidi) を完全にはサポートしていない。


 vim:tw=78:ts=8:noet:ft=help:norl: