vim文本编辑器
vim与vi的区别:( vim=vi +IMproved)
VIM是一个Unix以及类unix文本编辑器
特点:功能强大,高度可定制
vim编辑器的三种模式:一般模式、编辑模式和命令行模式。
【1】一般模式中可以进行删除、复制和粘贴的功能,但是无法编辑文件内容
【2】一般模式切换到编辑模式可以按下i、I、o、O、a、A、r、R键。按下Esc键可以回到一般模式
【3】一般模式中输入:、/、?三个中的任意一个可以将光标移到最下面的一行
注:编辑模式与命令行模式之间是不能互相切换的。
vim使用
移动光标的方法:
//移动光标的方法:
[Ctrl]+[f]:屏幕向下移动一页,相当于[PageDown]按键。 [Ctrl]+[b]:屏幕向上移动一页,相当于[PageUp]按键。 0或功能键[Home]:移动到这一行的最前面字符处。 $或功能键[End]:移动到这一行的最后面字符处。 G:移动到这个文件的最后一行。 gg:移动到这个文件的第一行,相当于1G. N[Enter]:N为数字,光标向下移动N行。 //eg: 2[Enter]光标下移2行
查找和替换:
/word:向下寻找一个名称为word的字符串。 ?word:向上寻找一个名称为word的字符串。 :n1,n2s/word1/word2/g:在第n1行和n2行之间寻找word1这个字符串,并且将其替换为word2. 如:[:2,3s/abc/def/g] //在第2和第3行间查找,将abc替换为def :,$s/word1/word2/g:从第一行到最后一行寻找word1这个字符串,并且将其替换为word2. :,$s/word1/word2/gc:从第一行到最后一行寻找word1这个字符串,并且将其替换为word2.且在替换前显示提示字符给用户确认是否需要替换。
//一个一个提示是否需要替换
删除、复制和粘贴:
x,X:在一行字中,x为向后删除一个字符(相当于[Del]键),X为向前删除一个字符(相当于[Backspace])。 dd:删除光标所在的一整行。 ndd:删除光标所在的向下n行。//eg: 2dd:向下删除2行 yy:复制光标所在的一行。 nyy:复制光标所在的向下n行。 p,P:p为将已复制的内容在光标的下一行粘贴,P则为粘贴在光标的上一行。 u:复原前一个操作。 [Ctrl]+r:重做上一个操作。 .:小数点,重复前一个操作。
一般模式切换到编辑模式
i,I:进入插入模式,i为从目前光标所在处插入。I为在目前所在行的第一个非空格字符处开始插入。 a,A:进入插入模式。a为从目前光标所在处的下一个字符处开始插入。A为从所在行的最后一个字符处开始插入。 o,O:进入插入模式。o为在下一行插入。O为在上一行插入。 r,R:进入替换模式。r只替换光标所在那个字符一次。R会一直替换光标所在字符,直到按下Esc键。
一般模式切换到命令行
:w:将编辑的数据写入到硬盘中。 :q:离开vi.后面加!为强制离开。 :wq:保存后离开。:wq!为强制保存后离开。
vimrc配置:
rc=run command
系统级vimrc和用户级vimrc
每一行作为一个命令执行
vimrc使用:
vim test.txt :-h vimrc //查看vimrc帮助文档 :version //查看版本信息 注释以''单引号方式注释 :set all "显示目前所有的环境参数设定值
:set hlsearch "高亮度反白(高亮度搜寻)
:set nohlsearch "取消高亮度反白(高亮度搜寻)
:set backspace=2 "在编辑的时候可随时用退格键删除 (0、1的时候,只针对刚输入的字符有效)
:set autoindent "自动缩排
:set noautoindent "取消自动缩排
:set ruler "可显示最后一行的状态
:set showmode "左下角那一行的状态
:set nu "显示行号
:set nonu "取消行号
:set bg=dark "显示不同的底色色调
:syntax on "进行语法检验,颜色显示
:syntax off "关闭语法检验
vim不同模式:
基础入门:
vim寄存器
增查删改常规操作
vim组合规律
高级功能:
缓冲区与多文件编辑
多窗口与标签分组
文本对象与宏
Visual模式