vim 学习笔记 快捷键映射:定制你自己的快键
源文地址:http://blog.csdn.net/pachonghanya/article/details/7602497
查找vim中某个键映射的定义:
打开vim输入下面的命令
例如查看tab键的定义:
:verbose map <tab>
输出:
vim通过定义快键来实现括号自动补全:
让vim实现输入: [ 而在文件中输入: [] 并把光标置于中括号中,方法如下:
将上面的代码加到vimrc文件中即可,很简单吧。
解释一下: 上面的代码实现了一个快键映射,inoremap 表示该映射只在插入模式下有效,也即只有在插入模式下你输入: [ ,vim才会把它映射到后面的命令: []<Esc>i
[] : 表示在文件中写入: [] 而<Esc>表示回到正常模式,而后面的: i 表示把光标移动到刚才输入的最后一个字符(即: ])前,并进入插入模式。
同理,你也可以自己定义快键实现其他的自动补全功能。
例如:
实现vim中<C-A>全选,<C-C>复制,<C-X>剪切的功能:
打开vim输入下面的命令
- :verbose map <所要查找的快捷键>
例如查看tab键的定义:
:verbose map <tab>
输出:
- s <Tab> * <Esc>i<Right><C-R>=TriggerSnippet()<CR>
- 最近修改于 ~/.vim/after/plugin/snipMate.vim
vim通过定义快键来实现括号自动补全:
让vim实现输入: [ 而在文件中输入: [] 并把光标置于中括号中,方法如下:
- :inoremap [ []<Esc>i
将上面的代码加到vimrc文件中即可,很简单吧。
解释一下: 上面的代码实现了一个快键映射,inoremap 表示该映射只在插入模式下有效,也即只有在插入模式下你输入: [ ,vim才会把它映射到后面的命令: []<Esc>i
[] : 表示在文件中写入: [] 而<Esc>表示回到正常模式,而后面的: i 表示把光标移动到刚才输入的最后一个字符(即: ])前,并进入插入模式。
同理,你也可以自己定义快键实现其他的自动补全功能。
例如:
- :inoremap ) ()<Esc>i
- :inoremap ( ()<Esc>i
- :inoremap { {}<Esc>i
- :inoremap } {}<Esc>i
- :inoremap [ []<Esc>i
- :inoremap ] []<Esc>i
- :inoremap < <><Esc>i
- :inoremap > <><Esc>i
- :inoremap " ""<Esc>i
- :inoremap ' ''<Esc>i
实现vim中<C-A>全选,<C-C>复制,<C-X>剪切的功能:
- map <C-c> y
- map <C-X> d
- map <C-A> <Esc>ggVG
本文来自博客园,作者:摩斯电码,未经同意,禁止转载