2011-02-04 5 views
1

ビジュアルモードのマップを選択するだけで、一部のコマンドを適用する必要があります。これは、'<,'>がコマンドラインに現れる必要があることを意味します。ビジュアルモードで正しくコマンドを入力する

:と入力すると自動的に表示されるので、デリミタなしのマッピングを行いました(vmap ,{key} :{command}など)。これまでのところ、彼らは:'<,'>{command}と表示されています。

しかし、問題は、この動作に頼っても安全ですか?または、ビジュアルマップを作成してデリミタを挿入するより良い方法がありますか?

答えて

4

はい、その動作に頼っても安全です。ビジュアルモードのときに:を押すと、Vimは常にビジュアル範囲マーカー('<'>)を挿入します。マップは一連のキープレス(<expr>マップを無視して)を格納する単なる方法なので、入力したのと同じように動作します。

+0

おかげ@jamessan、@bobbogo – sidyll

3

マッピングの開始時に<c-u>を使用して、そこにある可能性のある範囲をクリアし、範囲マーカーを明示的に追加することができます(:<c-u>'<,'>)。

  • :help omap-info
  • :help c_CTRL-U
+0

感謝を知って良い、またについて知っていい! :) – sidyll

関連する問題