1

私は開発のためにVimを学ぶのに5週間ほどかかります、そして物事が沈み始めている間、私はイライラしてまだ私をつまずかせている1つの個人的な問題を抱えています。

私は常に「i」を使用して「上」に移動しています。「k」は下向き、「j」と「l」はそれぞれ左と右です。

私はこれがすべて、これらが方向性の動きであったPCゲームを何年もプレイしたことから来ていることを知っています。正直なところ、私はもうそれと戦いたくありません、そして私はむしろ私にとって非常に自然なことをしたいです。上記が方向の動きであり、「h」が挿入されるように、これらを再マップするにはどうすればよいですか?

2つの問題:自分のマシンで開発するためにこれらをローカル設定に永続的に保存するにはどうすればよいですか。また、他の人のマシンを使用しているときにこれらをすばやく切り替えるにはどうすればよいですか。つまり、Vimをシャットダウンすると、呼び出すことができ、それらが消去される一連のコマンドはありますか?

4

2 に答える 2

10

そのマッピングをしないでください!矢印キーを使用するよりもさらに悪いです

まず、カーソルを動かすvimの方法を学ぶことをお勧めします。

質問に戻ると、再マッピングh,j,k,lは簡単です。ただし、これらのマッピングを行うことは意味がありません(そして、行うべきではありません)。それは、作業を高速化することにはならず、vimを使用するときに夢中になります。ご存知のとおり、vimで編集することは意味しません

  • NORMALモードでは、カーソルを移動するだけです
  • INSERTモードに入り、実際のテキスト編集を行います
  • 通常モードに戻ってファイルを保存します

モードでできるvimの魔法はたくさんありNORMALます(それがそれが呼ばれた理由NORMALです)。マッピングを使用すると、それらを適用するときに本当に頭痛の種になります。例を見てみましょう。ニーズに合わせてマッピングをすでに設定しているとします。i,j,k and h。次のような行があります。

function foo (String arg)

カーソルがとの間(にある場合は、入力して角かっこで囲んだものを変更)できます。ci(しかしあなたのi手段k。どうなるでしょうか?現在の行とその上の行が削除されます!! よく言うことができます、あなたはタイプすることを忘れないでしょう、chw, dhw,ch(,dhw...それであなたはあなたの心の中でそれらのキーを再マップしなければなりません。:)

また、他の人のプラグインを「借りる」.vimrc場合や、プラグインを使用する場合にも問題が発生します。

上記の簡単な例でポイントがわかります。したがって、これらの基本的なキーを再マップする前に、よく考えてください。

于 2013-03-04T00:12:43.480 に答える
7

これを次のファイルに入れます~/.vimrc

noremap i k
noremap k j
noremap j h
noremap h i

他の人のコンピューターで vim を使用している場合は、プロンプトで同じ 4 つのコマンドを入力できます (:それぞれの前に入力し、それぞれの後に入力します)。設定は 1 つのセッションにのみ適用されます。

また、noは の略なnoremapので、シーケンス全体を次のように短縮できます。

:no i k<enter>:no k j<enter>:no j h<enter>:no h i<enter>

他人のコンピュータを使用している場合。

于 2013-03-03T23:48:50.007 に答える