`

【转】Vim按键映射

阅读更多

学会了Vim的简单使用的后,往往是开始折腾Vim的配置文件vimrc ,让它赶上其它编辑器:)。vimrc 中的设置实在是太多了,待日后把我的vimrc 文件贴出来后再做更多的说明,这里先对我已知道的按键映射(好像有的也叫按键绑定)做个笔记,同时也记下几个比较有意思的命令。

Vim的模式

在设置按键映射之前有必要先了解一下Vim的几种模式。据说Vim有十多种模式,但只要了解最基本的3种,基本上就可以满足日常应用了。

1. Normal mode (常态模式)

运行Vim后进入的就是Normal模式,在这种模式下可以移动鼠标、寻找、替换、编辑指令,但不能输入文字——这与其它编辑器有很大的差别。

2. Insert mode (插入模式)

在Insert 模式下,可以像在其它编辑器中一样输入文字。此时左下角状态列会有“-INSERT-”(-插入-)字样。在Normal模式按下下面的键可以进入Insert 模式:i (在当前字符的前面插入);a (在当前字符的后面插入);o (在当前行的后面添加新的一行);O (在当前行的上面添加新的一行)。

3. Visual mode (反白模式)

在Visual 模式下可以把文字反白起来,此时左下角状态栏会有“-VISUAL-”或“-VISUAL LINE-”或“-VISUAL BLOCK-”字样。在Normal模式下按v或V(有什么差别呢?)可以进入Visual 模式。

不管是在Insert 模式或Visual 模式或其它的什么模式,按Ese键都可以返回Normal模式。

按键映射

nmap :映射一个Normal模式下的键,只有在Normal模式这个命令才会生效。

例:nmap ,s :source $VIM/_vimrc<cr>

说明:绑定“,s”在Normal模式下映射为“:source $VIM/_vimrc<cr>”命令,即重新读取配置文件_vimrc 。

imap :映射一个Insert 模式下的键,只有在Insert 模式这个命令才会生效。

例:imap <F11> :r c:\boot.ini<cr>

说明:绑定F11在Insert 模式下的映射为“:r c:\boot.ini<cr>”命令,即读取c:\boot.ini文件到当前位置。

vmap :映射一个Visual模式下的键,只有在Visual模式这个命令才会生效。

例:vmap sb "zbi<b><c-r>z</b><ESC>

说明:选中文字后按sb,选中文字的前后将分别加上<b>和</b>。

再例:vmap g/ y/<c-r>"<cr>

说明:映射“g/”这个组合键匹配选中的字并给予高亮显示。

map :用map绑定的键对Normal, Insert, Visual和Command-line模式均有效。

例:map <F5> :ls<cr>:e #

 

link :http://xxxcjr.blogspot.com/2010/01/vim.html

 

分享到:
评论

相关推荐

    VIM的键盘映射图-学习VIM的好东东

    以键盘的图片形式,展示每个按键都有什么样的功能,一目了然!可以用作桌面背景以尽快掌握vim的操作技巧

    VimConfig:我的Vim配置,很简单但是很有效

    屏幕截图特征插件管理器:VimPlug 可用主题所有默认主题 正常模式下的按键映射&lt;C&gt; | 切换书呆子树| 切换爆炸| 建立新分页| 关闭当前缓冲区&lt;C右| 转到下一个标签| 转到上一个标签ff | 切换FZF(:Files) gf | ...

    easy-navigate.vim:Vim常用的导航键盘映射

    easy-navigate.vim Vim常用的导航键盘映射将它们存储在这样的单独插件中,以保持.vimrc干净安装使用插件管理器Plugin 'NLKNguyen/easy-navigate.vim' 或手动将easy-navigate.vim复制到~/.vim/plugin/按键图在缓冲区...

    vscodesetup:设置和对vscode标准配置的补充,添加了vim模式,一些vim按键绑定

    添加了vim模式, 一些vim键绑定。 JavaScript设置: 颜色 更漂亮 美化 CSS偷看 分隔符 颜色突出 es7 react和graphql片段 待办事项 自动重命名标签(由vscode本身取代) 苗条 数据库设置 MongoDB for vscode

    vim-arpeggio:Vim插件:同时按下的按键的映射

    vim-arpeggio:Vim插件:同时按下的按键的映射

    vim 配置文件

    按键映射: ctrl+] 跳到定义 ctrl+t 返回 wm 激活文件视图 tl 激活类视图 bn 跳到下一文件 bp 跳到上一文件 ai 添加作者及版本信息 F5 c的编译及执行 F6 c++的编译及执行 F12 !ctags -R

    vim使用进阶:vim使用技巧、配置、命令和插件

    一种是使用一个固定的vim配置脚本保存project相关的path设置、按键映射等;另外一种是利用前面文章所介绍的会话(session)机制。 vim使用进阶: 使用标签(tag)文件 本文介绍了如何使用Exuberant ctags生成tag文件...

    easy-navigate.vim:Vim的通用导航键盘映射

    easy-navigate.vim Vim常用的导航键盘映射将它们存储在这样的单独插件中,以保持.vimrc干净安装使用插件管理器Plugin 'NLKNguyen/easy-navigate.vim' 或手动将easy-navigate.vim复制到~/.vim/plugin/按键图在缓冲区...

    vim-browser-search:对(Neo)Vim中选择的文本执行快速的Web搜索

    按键映射 该插件不提供任何默认映射。 以下是一些推荐的键映射 nmap &lt;silent&gt; &lt;Leader&gt; s &lt;Plug&gt; SearchNormal vmap &lt;silent&gt; &lt;Leader&gt; s &lt;Plug&gt; SearchVisual 用例 选择文本并键入&lt;Leader&gt;s进行网络搜索 键入...

    vim-all:适用于整个缓冲区的惯用 vim 文本对象

    “vim 惯用”映射 更少的按键输入 速度 安装 文德尔Plugin 'bruno-/vim-all' 病原git clone git://github.com/bruno-/vim-all.git ~/.vim/bundle/vim-all 其他 似乎做同样的事情,但有不同的映射。 执照

    在vim中异步飞行grep-Linux开发

    安装dein.vim调用vim-plug的dein#add('wsdjeg / FlyGrep.vim')插件'wsdjeg / FlyGrep.vim'用法:FlyGrep您还可以定义自定义映射,例如:nnoremap s /:FlyGrep 按键绑定说明SPC /使用FlyGrep缓冲区中的默认工具...

    vim-files:我的vim文件

    用于来回操作的许多有用的映射 -修改周围的分隔符使用一个按键添加重复功能. Tim Pope的许多插件的命令从vim内运行带有异步支持的许多shell命令 -关闭块一样if , for自动地使用智能缩写模式和其他一些很酷的功能来...

    vim-ex_test:在VIM中运行Elixir测试

    配置按键映射将您首选的键映射添加到您的.vimrc文件。 " ExTest.vim mappingsmap &lt;Leader&gt; t : call RunCurrentTestFile &#40;&#41; &lt;CR&gt;map &lt;Leader&gt; s : call RunNearestTest () &lt;CR&gt;map &lt;Leader&gt; l : call ...

    vim-undoreplay:重播您的编辑

    /脚本&gt; 安装 / / NeoBundle ' haya14busa/vim-undoreplay 'Plugin ' haya14busa/vim-undoreplay 'Plug ' haya14busa/vim-undoreplay '用法 :UndoReplay按键映射按键图细节细节或k 加快速度或j 减速&lt;Space&gt; 停止/重新...

    obsidian-vimrc-support:Obsidian.md笔记软件的插件

    用法首先,请确保已打开“黑曜石Vim”按键绑定-参见“编辑器”-&gt;“ Vim按键绑定”。 现在,要永久保留某些Vim设置,请安装此插件,并将名为.obsidian.vimrc的文件.obsidian.vimrc保管库根目录。 如果您使用多个保管...

    vim配置脚本

    网上那些脚本太麻烦,眼花缭乱的。...只有下面的功能支持中文显示,行号,高亮,如果安装完ctags和Taglist,按F3可以快速打开函数列表,F4可以在同一个窗口打开相同的代码(就是把sp命令做了个按键映射)。

    vim:Vim的“明智的默认设置”。 我主要是PHP开发人员,但这些设置没有任何假设。 相反,我尝试进行适用于几乎所有环境的样板设置

    赛灵点的斑点病毒使事情减至最少但又方便。...按键映射领导键: , (逗号) 使用&lt;leader&gt;ev和&lt;leader&gt;eg分别编辑vimrc和gvimrc。 保存时将自动重新加载它们。 在折叠上按可切换打开或关闭。 是递归的。

    vim-ginkgo-runner:一个简单的银杏测试跑步者

    按键映射 将您的键映射添加到.vimrc : map &lt;Leader&gt;t :call RunCurrentGinkgoFile&#40;&#41; map &lt;Leader&gt;s :call RunNearestGinkgo() map &lt;Leader&gt;l :call RunLastGinkgo() map &lt;Leader&gt;a :call RunAllGinkgo() ...

    一个不错的可定制的vim弹出菜单-Linux开发

    前言在我的.vimrc中定义了许多按键映射。 当我忘记了一些.vimrc时,会不厌其烦地检查我,因此我制作了一个可以完全自定义的quickmenu插件:格式正确,并仔细地涂上了序言我的.vimrc中定义了许多键盘映射。 当我忘记...

    macvimspeak:电脑,导航vim

    这也是学习 Vim 的好方法,因为那些简单的按键命令会映射到单词! (例如,a 表示追加,A 表示在行尾追加)。 要使用该应用程序: 以您喜欢的方式下载并安装该应用程序 运行应用程序,它会变成红色并带有“开始...

Global site tag (gtag.js) - Google Analytics