13

ここ数か月、Vimium のようなプラグインを使用して Chrome を制御することに夢中になっています。私は現在 iTerm2 を使用していますが、vim コマンドを使用する、または vim のようなコマンドを使用するように構成できる端末エミュレーターまたはシェルがあるかどうか疑問に思っていました。

私は主に、バッファからテキスト (ビジュアル モード) を選択し、それをヤンクして、以下のコマンド ラインのどこかに貼り付けることに関心があります。jとでバッファを上下にスクロールし、k挿入モードでコマンドを編集できると便利です (現在は矢印キーを使用する必要があります)。

こんなに美しいものが存在するでしょうか?

4

2 に答える 2

11

vim によるコマンドの編集と実行

  1. vim :r !history(または何でも)を開き、コピーして、:!<type your shell command here>. :silent !<blah blah>vim が後でメッセージを表示するのをやめたい場合は、最後のコマンドを使用してください。

  2. 通常のemacs設定に固執する場合(私が説明したようにどちらのシェルでもモードを変更しない場合、実際にはctrl + a、ctrl + eなどを使用できます!)、コマンドを作成して編集してみてください。を通じてvimでCTRLXCTRLE
    ただし、これは EDITOR / VISUAL 環境変数を介して設定されたエディターに依存します。これは、システムが通常使用するエディターを Linux に通知します!

    +clipboard または +xterm_clipboard フラグでコンパイルされた vim がある場合、ここにコンテンツを貼り付けることができます!
    :wq行った編集でプロンプトに戻ります。



シェルのネイティブ バインディング

バッシュset -o vi

zsh :bindkey -v

または で通常モードに切り替えると、vim ( ...) のような動きを使用しESCたり、 を使用して現在のコンテンツで vim を開くことができます。CTRL[e w b h j k lv

シェルは、動作をエミュレートするために最善を尽くします。悲しいことに、入力時に入力が変化する以外に、挿入しているかどうかにかかわらず、視覚的なインジケーターはありません。

ネイティブ バインディングを永続的に保持するには、使用するシェルに応じて、~/.bashrcまたは のいずれかにコマンドを追加します。~/.zshrc何かをテストしたいだけの場合は、これをシェルに直接入力してください。ただし、新しい設定がこのように固執しないことを忘れないでください。
シェルがインストールされている場合、これは Windows でも機能します (git の bash または cygwin を介して)。

于 2013-02-27T20:28:17.867 に答える
4

sjas は近いですが、重要なコンポーネントがありません:

set -o vivimバインディングを提供します

次に を押しvて、vim の現在の行を編集します

ほとんどの場合、テキスト、vim、または vim なしを選択する場合、マウスの方が効率的です。

于 2013-02-27T20:32:09.160 に答える