vim编辑器
编辑器的分类
- 文本编辑器,ASCII码
- 字处理器:word
全称
- vi:Visual interface
- vim: Visual interface improved
分类
- 全屏编辑器,
- vim
- Emacs
- notepad++
- ...
- 模式编辑器
- grep
- sed
- awk
vim模式:
- 编辑模式(命令模式)
- 输入模式
- 末行模式
- 可视化模式(块)
默认处于编辑模式
模式转换
编辑模式(命令模式) --->>输入模式
i:在当前光标所在字符的的前面,转换为输入 a:在当前光标所在字符的的后面,转换为输入 o:在当前光标所在字符的行下方,新建一行,并转为输入模式。 I:在当前光标所在行的行首,转为输入模式 A:在当前光标所在行的行尾,转为输入模式 O:在当前光标所在行的上方,新建一行,并转为输入模式。复制代码
输入模式--->编辑模式(命令模式)
ESC键复制代码
编辑模式(命令模式)---->>末行模式
:10d10,20dset nu!ls /etc复制代码
末行模式---->> 编辑模式(命令模式)
ESC ESC键复制代码
一.打开文件:
vim filenamevim /path/to/somefilevim +12 file :打开文件,光标在12行vim +# file :打开文件,光标在N行vim + file:打开文件,光标在最后一行。vim +/pattern file :打开文件,光标在第一个匹配的行首复制代码
二.关闭文件:
1.末行模式关闭文件:q 退出:q!:wq 保存退出;w 保存 :w! 强制保存:wq --> :x2.编辑模式(命令模式)ZZ:保存退出复制代码
三.移动光标(编辑模式)
1.逐字符移动: h:向右 j:向下 k:向上 l:向左 数字h 5h:向右移动5个字符 2.逐个单词移动 w:移动到下一个单词词首 e:跳到当前单词或下一单词的词尾 b:跳到当前单词或前一单词的词首 #w:一次跳n个单词。 4b:3. 行内跳转 0:跳到行首(绝对行首) ^:行首的第一个非空白字符 $:绝对行尾4.行间跳转 #G:跳转到n行 G:最后一行 GG:第一行 末行模式 :# 移动到n行复制代码
四、翻屏
编辑模式(命令模式)f: 向后翻一屏、CTRL+b:向上翻一屏Ctrl+d: 向下翻半屏Ctrl+u:向上翻半屏复制代码
五、删除单个字符
x:删除光标所在处的单个字符#x:删除光标所在处及向后n个字符复制代码
六、删除命令:d
d命令跟跳转命令组合使用dw:3dw:#de,#dbdd:删除当前光标所在行#dd:删除当前光标所在行及下面共#行 末行模式下startadd,Endaddd1,8d.,5+d.:表示当前行$:表示最后一行+#:向下#行1,$-3d:最后一次删除的内容,可以粘贴到别处复制代码
七、粘贴命令p
p:如果删除或复制为整行内容,则粘贴至光标所在行的下方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的后面;P:如果删除或复制为整行内容,则粘贴至光标所在行的上方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的前面;复制代码
八、复制命令 y
yy:一行#y:复制代码
九、先删除内容,在转换为输入模式(修改)
c:同d命令c$:cc:5C:复制代码
十、替换
r:替换单个字符R:进入替换模式复制代码
十一、撤销编辑操作:
u:撤销前一次的操作: 连续u,撤销此前n次操作3u#u:撤销最近#次操作复制代码
十二、撤销上一次的撤销
Ctrl+r恢复复制代码
十三、重复前一次编辑操作
.复制代码
十四、可视化模式
v:按字符选取V:按矩形选取Ctrl+v:复制代码
十五、查找
/pattern?patternnN复制代码
十六、查找并替换
在末行模式下 用法和sed一样 address1,address2s/pattern/string/gi 1,$ %:表示全文。
十七、打开多个文件
vim file1 file2;next 切换至下一个文件:prev 切换至前一个文件:last 切换至最后一个文件:first 切换最前面的一个文件退出:qall 全部退出复制代码
十八:分屏显示一个文件
ctrl+w ,s:水平分割窗口ctrl+w,v:垂直分割窗口在窗口间切换光标Ctrl+w,ARRON:qa 关闭所有窗口复制代码
十九、分窗口多个文件
vim -o file1 file2 file3 ..水平分割窗口vim -O file1 file3 .... 垂直分割窗口二十、将当前文件部分内容另存为另一文件末行模式下使用w命令:w:add1,addr2w /path/to/somewhere复制代码
二十一、将另一个文件的内容填充在当前文件中
:r /path/to/somefile复制代码
二十二、跟shell交互
:!command复制代码
二十三、高级话题
1.显示或取消行号:set numberset nu:set nonu2、显示忽略大小写或区分大小写set ignorecaseset ic:set noignorecase:set noic3.设定自动缩进:set autoindent:set noai4.查找的文本高亮显示或取消:set hlsearch:set nohlsearch5.语法高亮:syntax on:syntax off复制代码
二十四、配置文件
/etc/vimrc~/.vimrc(家目录下)复制代码
二十五、练习vim的小游戏
vimtutor vim -r file复制代码
总结
以上都是我大学的时候,学习的笔记,无意间看到了,发现很多东西都忘记了,现在准备复习一下,分享在这里。下面赠送一个安装vim插件的命令。
神器: wget -qO- https://raw.github.com/ma6174/vim/master/setup.sh | sh -x