在vim中映射键时nore是什么意思?

xn.*_*xn. 5 vim

nore在vim中映射键时意味着什么?例如,这两个映射之间有什么区别?

:map ddd ddjdd
Run Code Online (Sandbox Code Playgroud)

:noremap ddd ddjdd
Run Code Online (Sandbox Code Playgroud)

Roo*_*ook 9

这意味着映射是没有 N - 草书.

为了显示,

:nmap x dd
Run Code Online (Sandbox Code Playgroud)

假设您x以正常模式映射到dd(删除行),以节省一些时间,删除行.一切正常,直到你需要其他映射中的x(删除字符)来删除两个字符,

:nmap c xx
Run Code Online (Sandbox Code Playgroud)

因为现在上层映射确实如此

:nmap c dddd
Run Code Online (Sandbox Code Playgroud)

即将删除两行.

因此,为了保留"原始"映射(vim键),您可以采用非递归方式,

:nnoremap x dd
:nnoremap c xx
Run Code Online (Sandbox Code Playgroud)

一切正常(映射不......啊,你明白了)......

使用"nore"进行所有映射通常是一种很好的做法,因为你永远不知道哪些插件可能依赖于什么,以及你用"普通"映射打破了什么样的vim行为.