7

norevimでキーをマッピングするとはどういう意味ですか? たとえば、これら 2 つのマッピングの違いは何ですか?

:map ddd ddjdd

:noremap ddd ddjdd
4

5 に答える 5

15

これは、マッピングがn-筆記体ではないことを意味します。

説明する、

:nmap x dd

x通常モードでdd(行を削除)にマップするとします。時間を節約するために、行を削除します。2つの文字を削除するために、他のマッピングでx(文字の削除)が必要になるまで、すべてが正常に機能します。

:nmap c xx

なぜなら今、上部のマッピングは本当に

:nmap c dddd

つまり、2行を削除します。

したがって、「元の」マッピング(vimキー)を保持するには、非再帰的な方法でそれを行います。

:nnoremap x dd
:nnoremap c xx

そしてすべてが機能します(マッピングは機能しません...ああ、あなたはアイデアを得る)...

どのプラグインが何に依存しているのか、「通常の」マッピングでどのvimの動作を壊しているのかわからないため、通常はすべてのマッピングを「nore」で行うことをお勧めします。

于 2012-04-22T21:39:26.347 に答える
3

組み込みのドキュメントですべてカバーされています

map:

map コマンドが適用されるモードのキー シーケンス {lhs} を {rhs} にマップします。{rhs} を含む結果は、マッピングのためにさらにスキャンされます。これにより、マッピングのネストされた再帰的な使用が可能になります。

そしてnoremap

map コマンドが適用されるモードのキー シーケンス {lhs} を {rhs} にマップします。ネストされた再帰的なマッピングを避けるために、{rhs} のマッピングを禁止します。コマンドの再定義によく使用されます。{Vi にはない}

于 2012-04-22T21:48:00.187 に答える
1

nore非再帰を表します。これにより、マッピングの右側がマッピングを無視します。

于 2012-04-22T21:13:45.493 に答える
0

全文読んでいただけると助かります。「再マップなし」のように「noremap」。つまり、マッピングは変更できません。

于 2012-04-22T21:13:33.073 に答える