最近Vimを使い始めました。以前の編集者から、私はを押して単語全体を削除することに慣れています Ctrl-Backspace。ドキュメントを見た後、私はこれが押すことによって行われたことを発見しました Ctrl-w Vimで。問題は、押すことに慣れた後です Ctrl-w、単語のつづりを間違えるたびにタブとチャットを閉じ始めました(この質問を書いている間、このタブを5回閉じました)。そこで、Vimでキーをマップする方法を確認し、これを試しました。
:imap <C-BS> <C-w>
残念ながら、それは機能しませんでした。少し調べてみたところ、端末が区別できないことがわかりました Ctrl-Backspace そして Backspace。この問題を修正するためのハックとパッチをいくつか見ましたが、ターミネーター(使用したいエミュレーター)でそれらを動作させることができませんでした。
マップする方法はありますか Ctrl-Backspace ターミネーターを使用するときにVimで?
キーボード入力が内部で処理される方法のため、残念ながら、これは今日では一般的に不可能です。のようないくつかの重要な組み合わせ Ctrl +非アルファベットはマッピングできません。 Ctrl +手紙対。 Ctrl + Shift +文字は区別できません。 (端末が個別のtermcapコードを送信しない限り、ほとんどの場合は送信されません。)挿入モードまたはコマンドラインモードで、キーの組み合わせを入力してみてください。 。何も起こらない/挿入されない場合、そのキーの組み合わせを使用することはできません。これは、<Tab>
/<C-I>
、<CR>
/<C-M>
/<Esc>
/<C-[>
などにも適用されます(例外は<BS>
のみです。/<C-H>
。)これは既知の問題点であり、vim_devと#vim IRCチャネル)に関するさまざまな議論の対象です。
一部の人々(主にPaul LeoNerd Evans)はそれを修正したいと思っており(これをサポートする端末のコンソールVimの場合でも)、さまざまな提案を提出しています。 http://groups.google.com/group/vim_dev/browse_thread/thread/626e83fa4588b32a/bfbcb22f37a8a1f8
しかし、今日の時点では、パッチやボランティアはまだ出ていませんが、多くの人が将来のVim8メジャーリリースでこれを持ちたいと表明しています。