1. ホーム
  2. vim

[解決済み] Vimのマッピングコマンドであるremap, noremap, nnoremap, vnoremapの違いは何ですか?

2022-03-15 10:03:04

質問

の違いは何ですか? remap , noremap , nnoremapvnoremap Vimのマッピングコマンド?

どのように解決するのですか?

remap オプション は、マッピングを再帰的に動作させるものです。デフォルトではオンになっているので、このままにしておくことをお勧めします。残りは マッピングコマンド 以下に説明します。

:map:noremap 再帰的 非再帰的 バージョンのマッピングコマンドがあります。例えば、実行すると

:map j gg           (moves cursor to first line)
:map Q j            (moves cursor to first line)
:noremap W j        (moves cursor down one line)

次に

  • j にマップされます。 gg .
  • Q 意志 また にマッピングされます。 gg というのも j は再帰的マッピングのために展開されます。
  • W にマップされます。 j (そして gg ) なぜなら j は、非再帰的マッピングでは展開されません。

ここで、Vimが モーダルエディタ . これは ノーマル モードになります。 ビジュアル モードとその他のモードがあります。

これらのマッピングのセットそれぞれに対して マッピング は、ノーマルモード、ビジュアルモード、セレクトモード、オペレーターモードで動作する ( :map:noremap ) 、通常モードで動作するもの ( :nmap:nnoremap )、ビジュアルモードで1つ ( :vmap:vnoremap ) などがあります。

これに関する詳しいガイダンスは、以下を参照してください。

:help :map
:help :noremap
:help recursive_mapping
:help :map-modes