vim map学习[1]
来源:互联网 发布:安卓手机定位软件 编辑:程序博客网 时间:2024/06/07 00:23
1.vim模式:
vim一共有六种模式:
普通模式
在普通 (normal) 模式里,你可以输入所有的普通编辑命令。启动编辑器之后就处于该模式 (除非你置位了 'insertmode'选项,下面会有说明)。亦称为命令 (command) 模式。
可视模式
该 (visual) 模式与普通模式相似,但是移动光标的命令会扩展高亮的区域。非移动命令作用于高亮的区域。见
|Visual-mode|。如果置位了 'showmode' 选项,窗口底部会出现"--VISUAL--" 字样。选择模式
该 (select) 模式看起来与 MS-Windows 的选择模式很像。键入一个可显示字符会删掉所有被选择的字符并且进入插入模式。见 |select-mode|。如果置位了 'showmode' 选项,窗口底部会出现"--SELECT--" 字样。
插入模式:
在插入 (insert) 模式下你键入的内容会插入到缓冲区。见|insert-mode|。如果置位了 'showmode' 选项,窗口底部会出现"--INSERT--" 字样。
命令行模式:
在命令行 (command-line 或 Cmdline) 模式里你可以在窗口底部输入一行命令。执行 Ex 命令使用 ":",查找使用 "?"和 "/",调用过滤命令使用"!"。|cmdline-mode|
Ex 模式:
与命令行模式类似,但是执行完一条命令后,你会继续停留在Ex 模式。提供非常有限的命令行编辑。|Ex-mode|
还有六种_附加_模式。这些都是在基本模式的基础上变化而来的
操作符等待模式
该 (operator-pending) 模式与普通模式类似,但是在操作符之后,vim 等待一个动作 {motion} 以确定操作符的作用范围。
替换模式
替换 (replace) 模式是插入模式的特殊情况。你可以做和插入模式里相同的事情,但是你输入的字符会覆盖原先的字符。见 |Replace-mode|。如果置位了 'showmode' 选项,窗口底部会出现"-- REPLACE --" 字样。
虚拟替换模式
虚拟替换 (virtual replace) 模式类似于替换模式,但你替换的不是文件的字符,而是屏幕上占据的位置。见|Virtual-Replace-mode|。如果置位了 'showmode' 选项,窗口底部会出现"-- VREPLACE --" 字样。
插入普通模式
在插入模式里输入 CTRL-O 可进入该 (insert normal) 模式。与普通模式类似,但是只能执行一条命令然后返回到插入模式。如果置位了 'showmode' 选项,窗口底部会出现"-- (insert) --" 字样。
插入可视模式
在插入模式里进行可视模式的选择,例如,在插入模式里键入CTRL-O 然后键入 "v" 或 "V" 或 CTRL-V,可进入该 (insertvisual)模式。可视选择结束时,返回到插入模式。如果置位了 'showmode' 选项,窗口底部会出现"-- (insert) VISUAL --" 字样。
插入选择模式
在插入模式里启动选择模式可进入该 (insert select) 模式。例如,用鼠标拖拽或 <S-Right>。如果选择模式结束,Vim 返回插入模式。如果置位了 'showmode' 选项,窗口底部会出现"-- (insert) SELECT --" 字样。
2.各种模式下的map命令
3.map映射:
范例1
nmap <F2> GoDate: <Esc>:read !date<CR>kj
以上命令含义:
- nmap,表示在Normal模式下的映射
- <F2>,表示Normal模式下按<F2>
- GoDate,首先是G跳转到文档末尾,o进入Insert模式,Date:表示我们要输入的字符串。
- <Esc>,退出Insert模式。
- :read !date,执行date命令,并把命令输出追加到当前行之后。
- <CR>,表示回车。
- kJ,将光标上移一行(k),并合并上下两行(J)。
范例2:
omap <F7> a{
光标移到{上,输入d<F7>,就能删除一个C语句块(包括{}和它们之间的文本),而y<F7>就能复制整个代码块。
- vim map学习[1]
- vim map
- VIM :map
- VIM MAP
- Vim学习笔记(1)
- vim学习1:模式
- VIM学习札记1
- VIM用户手册学习1
- vim学习笔记1
- VIM学习(1)
- Vim学习记录(1)
- Vim学习笔记(1)
- C++ map学习1
- vim map 初步
- VI/VIM map
- classis map on VIM
- VIM键盘映射 (Map)
- vim配置map nmap
- 将博客搬至CSDN
- Oracle 10g 数据库的备份和还原
- (2/3/4)-D Sqr/Rects/Cubes/Boxes?
- OCP-1Z0-053-V13.02-42题
- Ubuntu-Python2.7安装 scipy,numpy,matplotlib
- vim map学习[1]
- 我的第三个 USACO Training--Friday the Thirteenth
- ERROR LNK1123的解决方案
- Hadoop第一个程序,利用API向HDFS中写入数据
- 20个超实用的JavaScript技巧及最佳实践
- nginx的httpGzip参数配置
- VirtualBox下设置Windows XP与Ubuntu的共享文件夹
- Qt之事件
- HDOJ 1208 Pascal's Travels(水DP)