22

ローカルマシン(Mac OS X Snow Leopard)のターミナルでVIMを使用する場合、削除キーは実際にはバックスペース(つまり、破壊的なバックスペース)です。

特定のサーバーにSSHで接続すると、何らかの理由で通常の削除になります(つまり、カーソルの下の文字を削除します)。

一貫性を保つように変更するにはどうすればよいですか?私は十数の解決策を試しましたが、何もうまくいかないようです。

[ターミナル設定]->[詳細設定]の[削除はCtrl-Hを送信します]チェックボックスをオンにすると機能しません。これは非破壊的なバックスペースです。

私はVIMで約100の異なるキーマッピングを試しましたが、役に立ちませんでした。

興味深いことに、VIMでコマンドを入力しているとき(たとえば: <something>)、キーは期待どおりに機能します。実際のテキストを編集しているときだけ、キーが台無しになります。何か案は?

4

4 に答える 4

8

試してみるいくつかのアイデア:

  • .vimrcリモート サーバー上のファイルに、次の行を追加します。

    set term=linux
    
  • リモートサーバー上.bash_profileのファイル (または選択したシェルに対応するもの) で:

    stty erase ^H
    

    注: これを正しく機能させるには、 - を入力してから - を入力して文字を入力する必要がctrlあります。vctrlh^H

    また、ターミナル設定で「Ctrl-Hを送信して削除」がチェックされていることを確認してください。

于 2011-07-02T02:33:19.280 に答える
4

追加してみてください

<Del>=を設定します<C-v><Del>

ターゲットマシンのvimrcに。<C-v><Del>ここでは、ターゲットマシンにログオンしているときに入力する必要があります。これが機能しない場合は、チェックしてくださいverbose imap <Del>:これにより、一部のプラグインが<Del>挿入モードで再マップされたかどうかがわかります。

于 2010-11-11T19:58:03.233 に答える
4

これを試してください:http://www.alecjacobson.com/weblog/?p=295

Terminal.app の設定を変更して問題を解決しました。[ターミナル] > [設定] で [詳細設定] を選択します。「削除で Ctrl-H を送信」にチェックを入れます。これで、vi と vim は削除キーをより直感的に理解できるはずです。

注: vimrc ファイルで「delete」キーをマッピングするのが、おそらくこれを行う正しい方法のように思えましたが、これは大変な作業です。このようにしない理由はありますか?

于 2012-04-10T03:45:11.483 に答える