vim 基本操作总结
三种模式:
(1)命令行模式:能进行的操作为切换模式,光标移动,删除,恢复,复制粘贴。
(2)输入模式
(3)末行模式:“:”进入
光标定位:
(1)一行的首尾:^ $
(2)文件首尾:[[ ]]
(3)翻页:Ctrl+f(forward) Ctrl+b(backward)
半夜: Ctrl+u(up) Ctrl+d(down)
(4)删除:删除行 dd(nd)
删除单词 dw
删除光标及后面的内容 d$
(5)替换:
替换命令可以在全文中用一个单词替换另一个单词: :%s/four/4/g “%” 范围前缀表示在所有行中执行替换。最后的 “g” 标记表示替换行中的所有匹配点。如果仅仅对当前行进行操作,那么只要去掉%即可
分割窗口:
:split :vsplit Ctrl+w转换窗口
文本整体移动:
:【n1,n2】<< ,:[n1,n2]>> 默认是左右移动8,可以set shiftwidth
:n m k上下移动
n为源目的的行,m表示move,k表示移到k行下方,指定范围的话把n换成n1,n2
vi高级使用
在末行输入:set可以看到现在的设置
行号设置:set number;set nonumber
.vimrc可以配制自己的vim
语法高亮:在.vimrc 文件中输入 syntax on
如果还没有高亮,就在/ect/profile中添加 export TERM=xterm-color
vim与正则结合
(1)理解正则
- 斜杠(/)
定界符,是标志正则开始和结束的标志
- 句点(.)
表示匹配任意单字符,及该字符可以替代任何单个字符 eg. /s.d/匹配sed,scd,s5d..
- 方括号[]
表示匹配方括号中的任意一个字符,‘—'表示范围,eg./[a-zA-Z]/表示匹配所有的字符,[0-9]表示匹配数字,当元字符出现在[]中时,表示一个字符,’^'除外,表示非。
eg. /t[abc]t/可以匹配 tat,tbt,tct;
- 星号(*)
表示匹配0个或多个字符.eg. /ab*c/ 匹配到abc,abaaac
- 反斜杠(\)
转义字符
- ^一行的开始,$表示一行的结束