web-dev-qa-db-ja.com

Option +左矢印がVimで機能するのに、Mac OS Xでは右矢印が機能しないのはなぜですか?

Mac OS XのターミナルでVimを使用すると、Option +左矢印は期待どおりに単語をスキップしますが、Option +右矢印は何もしません。どうすればこれを修正できますか?

8
NobleUplift

デフォルトの動作を変更したいかどうかはよくわかりません。これは他のターミナルアプリケーションではうまく機能しないためです。

Option+Left vimがWordを次のように認識しているため、Wordを戻します esc+b。 (ターミナルのデフォルトのようです)。したがって、挿入モードの場合は通常モードにポップアウトされ、bが実行されてWordに戻ります。通常モードの場合、エスケープは何も行わず、bはWordに戻ります。

Option+Right vimはそれを次のように見ているので、何もしないように見えます esc+f。 fを指定すると、vimは次の文字を待機します。fの直後に何かを入力すると、その文字を見つけるために前に進みます。

これを変更する1つの方法は、ターミナルの設定に移動して、何を変更するかです。 Option+Right にマップされます。これを行うには、[設定]-> [設定]-> [現在のプロファイルの選択]-> [キーボード]に移動します。この時点で、「オプションカーソル右」を編集するか、新しい「オプションカーソル右」を追加できます(プラスをクリックすると、実際のカーソルが上書きされます)。そして、入力してマッピングを\033wに設定します esc+w。次に、マウスで[OK]をクリックします。 (Enterキーを押すと、Enterキーがテキストボックスに吸収されます。これは望ましくありません)

これが完了したら、新しいタブを開いて Option+Right vimでやりたいことをしますが、他の場所ではやりたいことはおそらくしません。 (それはそうかもしれませんが)

もう1つの方法は、マッピングを次のように変更することです。 Control+Left そして Control+Right。通常、vimではこれらはにマップされます B そして W それぞれ。これを行うには、私が書いた指示に従います `Ctrl +->`を使用してWordごとに移動する方法はありますか

キーボードだけでvimを使う方法を学ぶ方がおそらく良いでしょうが。

6
FDinoff

OS X Mojave 10.14.5の時点で、はるかにより簡単な解決策があります。

あなたは実際に必要ありません Macの設定で何かを変更します。多くの実験の後、あなたがする必要があるのはあなたの.vimrcファイルに:map f wを入れることだけであるように見えます!

何らかの理由でエスケープを指定する必要はなく、実際に私にとって期待される動作を妨げていました。私が提案したことを実行すると、自動的にエスケープされ、alt + Rightキーエントリでフォワードワードが実行されます(もちろん、現在は反対のことが自動的に機能します)。

0
profPlum