map简介
map是一个映射命令,将常用的很长的命令映射到一个新的功能键上。map是Vim强大的一个重要原因,可以自定义各种快捷键,用起来自然得心应手。
映射的种类
有五种映射存在:
- 用于普通模式: 输入命令时。
- 用于可视模式: 可视区域高亮并输入命令时。
- 用于操作符等待模式: 操作符等待中 (“d”,”y”,”c” 等等之后)。
- 用于插入模式: 也用于替换模式。
- 用于命令行模式: 输入 “:” 或 “/” 命令时。
几种模式的介绍
Normal Mode
也就是最一般的普通模式,默认进入vim之后,处于这种模式。Visual Mode
一般译作可视模式,在这种模式下选定一些字符、行、多列。
在普通模式下,可以按v进入。Insert Mode
插入模式,其实就是指处在编辑输入的状态。普通模式下,可以按i进入。Select Mode
选择模式。用鼠标拖选区域的时候,就进入了选择模式。和可视模式不同的是,在这个模式下,选择完了高亮区域后,敲任何按键就直接输入并替换选择的文本了。和windows下的编辑器选定编辑的效果一致。普通模式下,可以按gh进入。Command-Line/Ex Mode
命令行模式和Ex模式。两者略有不同,普通模式下按冒号(:)进入Command-Line模式,可以输入各种命令,
使用vim的各种强大功能。普通模式下按Q进入Ex模式,其实就是多行的Command-Line模式。
命令的组合
同Vim下的其他命令一样,命令的名字往往由好几段组成。前缀作为命令本身的修饰符,微调命令的效果。
对于map而言,可能有这么几种前缀:
- nore
表示非递归。
递归的映射。其实很好理解,也就是如果键a被映射成了b,c又被映射成了a,如果映射是递归的,那么c就被映射成了b。- n
表示在普通模式下生效- v
表示在可视模式下生效- i
表示在插入模式下生效- c
表示在命令行模式下生效
普通模式的映射命令
map
命令格式:
:map {l