[阅读: 305] 2005-02-20 14:52:12
//人工识别,工具只负责格式存储
vi快速学习
├命令模式
│├移动
││├字符
│││├h:左
│││├i:下
│││├k:右
│││└l:上
││├单词
│││├vi按空格或标点符号分隔单词
│││├vi按空格或新行来分隔长单词
│││├w:下一单词第一个字符
│││├W:下一长单词第一个字符
│││├e:下一单词最后一个字符
│││├E:下一长单词最后一个字符
│││├b:前一单词第一个字符
│││└B:前一长单词第一个字符
││├行
│││├0:到行首
│││└$:到行尾
││├句
│││├(:到句首
│││└):到句尾
││├段
│││├{:到段首
│││└}:到段尾
││└页
││ ├Ctrl-F|PageUp:到上页
││ └Ctrl-B|PageDown:到下页
│├高级
││├特定行
│││└<行号>G:跳到指定的行
││└正则搜索
││ ├/regexp:到文本式样下一次出现的地点
││ ├注意字符转换
││ │└/foo\.gif:将会匹配foo.gif
││ ├n:向前重复搜索
││ └N:向后重复搜索
│├Q进入ex模式
││├vi:回到命令模式
││├Escape:总是可以返回命令模式
││├:q:退出
││├:w:保存
││├:w filename.txt:另存为
││├:x|:wq:保存退出
││├:q!:不保存强制退出
││└文本替换
││ ├:s/regexp/replacement/:替换当前行出现的第一个式样
││ ├:s/regexp/replacement/g:替换当前行所有匹配
││ ├:%s/regexp/replacement/g:文件中所有匹配样式(这通常是需要的)
││ └:%s/regexp/replacement/gc:每次替换要求确认
│└编辑控制
│ ├x:删除当前光标所在的字符
│ ├J:将下一行接到当前行末
│ ├r:替换原字符
│ ├dd:删除当前行
│ ├重复及删除
│ │├.:重复上一命令
│ │└联合d和移动命令
│ │ ├dw:从当前位置删除到下一个单词词首
│ │ ├d):删除到下一个句首
│ │ └d}:删除本段的剩余部分
│ ├恢复!
│ │└u:回复一次命令
│ └复合命令
│ ├(数字)(移动命令)
│ │├3w:向后找3个单词
│ │├12b:向前12个单词
│ │└4j:向下4行
│ └(编辑)(数字)(移动命令)
│ ├d3w:删除光标后3个单词
│ └d2j:删除当前行和下2行
├缓冲控制
│├:sp filename.txt:在新窗口打开文件
│└Ctrl-WCtrl-W:在窗口间切换
├插入模式
│├Escape:返回命令模式
│├a|i:进入插入编辑模式
││├i:在光标处字符之前插入
││├I:文本插到当前行的行首
││├a:在光标处字符之后插入
││├A:文本插到当前行的行末
││├o:当前行下面生成一空行并插入
││└O:当前行上面生成一空行并插入
│└c:进入更改编辑模式
│ ├cc:以一新行替换当前整行
│ ├cO:替换当前位置到行首
│ ├c$:替换当前位置到行末
│ └联合c和移动命令
│ ├cW
│ ├ce
│ ├c)
│ └c}
├可视模式
│├v:进入可视化模式
│├移动或是键盘操作指定区域
││├y:复制
││└d:剪切
│└回到命令模式后
│ ├P:粘贴到光标之后
│ └p:粘贴到光标之前
└设置缩进
├自动缩进已启用
│├Ctrl-D:向左缩进一级
│└Ctrl-T:向右缩进一级
├:set autoindent:手动启用自动缩进
└:set tabstop=4