2011-07-09 5 views

答えて

22

set -o viがコマンドラインまたはスタートアップスクリプトのいずれかで設定されていますか。それはシェルのためにそれをオンにします。私は "set editing-mode vi"とset -o viの両方を持っていて、IRBでViのような編集をしています。


EDIT:

~/.editrcを作成してみてください、それにbind -vを置きます。 Snow Leopardはエディットラインの組み込みをサポートしているので、これはIRBが使用しているものかもしれません。

お試しくださいman 5 editrc詳細については、

+1

はい〜/ .bashrc(実際は〜/ .bash_profile)に-o viを設定していますが、irbに入る前にコマンドラインでviを編集していますが、irbの中には表示されません〜/ .inputrcファイルを処理します。これは私にとってrvmを使用してかなり退屈な後退です。私は解決策があると確信しています。誰かがReadline.set_vi_editing(またはそのようなコマンド)を試してみることを勧めましたが、「このマシンに実装されていません」というエラーが出ました。 Mac Snow Leopard – pixelearth

+1

〜/ .editrcファイルが機能しました。あなたは元気です。わたしは、あなたを愛しています。神に誓う。なぜシステムirbが〜/ .inputrcを使ったのか、rvm irbが〜/ .editrc ... – pixelearth

+0

〜/ .editrcを使っているのかと思ったのですが、私はマウンテンライオンをやっています。ありがとう! – trumans1

10

前述のとおり、~/.editrcbind -vを追加できます。

この問題は、タブの補完機能を使用できなくなってしまうことがあります。タブ補完を維持する場合は、bind \\t rl_complete~/.editrcに追加できます。

4

マウンテンライオンでRVMにインストールされたRuby 1.9.3を使用して、私は〜/ .editrcにbind -vを追加することでirbでviキーバインディングを取得できました。同じシステムにRVMを使ってRuby 2.0をインストールし、irbがemacsモードで動かなくなった。 〜/ .inputrcにset editing-mode viを追加すると、Ruby 2.0のirbでviキーバインディングが動作しています。

+0

私はPython3を使ってMAC OSX El Capitanと同様の経験をしました。 bind -vを.editrcに追加し、edit-mode viをinputrcに設定しました。 – arcseldon

関連する問題