Linux初级程序员的vim编辑器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux初级程序员的vim编辑器相关的知识,希望对你有一定的参考价值。

Linux初级程序员的vim编辑器

vi编辑器:全屏的文本编辑器

       vi: visual interface,可视化界面;

       vim:vi improved

       vim相对于vi有更多的新特性:

              1.语法着色显示;

              2.更多的命令;

              3.历史记录;

 

       vi:模式化文本编辑器

              模式:

                     编辑模式(命令模式),默认工作模式

                     插入模式(输入模式),文本信息的自由编辑;在左下角有“Insert”标记;

                     ex模式(末行模式),对于编辑器本身某些属性和功能的设定,也可以进行文本的编辑操作;

 

                     其他辅助模式:

                            替换模式:输入的信息直接替换光标所在位置的内容;

                            可视化模式:

 

       vi/vim的操作:

一.打开vi/vim的操作界面;

                     1.vi/vim命令;

                     2.vimfile:

                            1)file存在,就直接使用vim编辑器打开此文件,默认是将光标放置于该文件的起始文件位置,即:第一行的第一个字符;

                            2)file不存在,就直接以新建文件的方式打开;若执行保存命令,则文件会被写入磁盘;若不保存,则文件会消失。

                     3.vim+# file:

                            在打开指定文件时,将光标直接定位在文件第#行的行首;如果给定的数字比文件的行数要大,则光标直接停留在最后一行的行首;

                     4.vim+ file:

                            在打开指定文件时,直接将光标定位在文件的最后一行的行首。

                     5.vim+/PATTERN/:

                            再打开指定文件时,将光标定位在首次被PATTERN匹配到的行的行首;

 

二.关闭vi/vim的操作界面;

                     ex模式中的操作:

                            :q

                                   直接关闭vim编辑器,不保存修改内容;

                            :q!

                                   直接关闭vim编辑器,强制退出但不保存修改的内容;

                            :wq

                                   保存已修改的内容,并关闭vim编辑器;

                            :wq!

                                   对于无权更改的文件强制保存,并且在强制保存之后强制关闭vim编辑器;

 

 

                     编辑模式中的操作:

                            ZZ:保存并关闭vim编辑器;

                            ZQ:不保存已经修改的内容,直接关闭vim编辑器;

 

三.在vim的编辑模式中,光标的移动方式:

                     编辑模式中的光标移动操作:

                            1.逐字符移动:

                                   1)left arrow或者right arrow

                                   2)h:光标向左移动;l:光标向右移动;

                            2.逐字移动:

                                   w:移动光标至下一个字的字首;

                                   e:移动光标至当前字或下一字的字尾;

                                   b:移动光标至前一字的字首;

                            3.行内光标跳转

                                   0:绝对行首

                                   ^:相对行首

                                   $:绝对行尾

                            4.行间跳转

                                   1)up arrow 或者 down arrow;

                                   2)j:向下移动一行;k:向上移动一行;

                                   3)#G:直接将光标移动至第#行的行首;

                                   4)G:直接将光标移动至文档的最后一行;

                                   5)gg:直接将光标移动至文档的第一行;

                     ex模式中的光标移动:

                            :#:直接将光标移动至第#行的行首;

                            :l:直接将光标移动至文档的第一行行首;

                            :$:直接将光标移动至文档的最后一行行首;

四.翻页

                     pagedown或 pageup可以实现翻页;

                     ^+f:向下翻一页,向前翻一页;相当于pgdn;

                     ^+b:向上翻一页,向后翻一页,相当于pgup;

                     ^+d:向下翻半页;

                     ^+u:向上翻半页;

五.删除字符;

                     编辑模式中的操作

                            1.逐字符删除:

                                   x:删除光标所在位置的字符;

                                   X:删除光标所在位置的左侧的一个字符;

                            2.删除光标移动过程中经过的所有内容;

                                   d:删除光标移动过程中经过的所有字符;

 

                                   dh,dl,dj,dk,dArrow,dw,de,db,dG,dgg,d0,d$,d^

 

                                   dd:删除当前光标所在行;

                     ex模式中的操作:

                     :d:删除光标所在行;相当于:.d;其中的“.”指的是当前行;

                     :#d:删除第#行;

                     :m,nd:删除从第m行开始,到第n行结束中间的所有行;

                     :m,+nd:删除从第m行开始,及其后面n行的内容;

                     :.,+nd:删除从当前光标所在行开始,及其后面n行的内容;

                     :.,$d:删除从当前光标所在行开始,到文档末尾的所有内容;

 

                     注意:在vim的操作中,所有的删除操作,同时意味着剪切;

 

六.复制命令

                     编辑模式中的操作:

                            y:复制光标移动过程中经过的所有内容;

 

                            yh,yl,yj,yk,yArrow,yw,ye...

                            yy:复制当前光标所在行;

                     ex模式中的复制:

                     :y:复制光标所在行;相当于:.d;其中的“.”指的是当前行;

                     :#y:复制第#行;

                     :m,ny:复制从第m行开始,到第n行结束中间的所有行;

                     :m,+ny:复制从第m行开始,及其后面n行的内容;

                     :.,+ny:复制从当前光标所在行开始,及其后面n行的内容;

                     :.,$y:复制从当前光标所在行开始,到文档末尾的所有内容;

 

七.粘贴命令:

                     编辑模式中的操作

                            p(lower);如果是行内的复制或剪切操作,在光标右侧完成粘贴;如果是多行复制或剪切操作,在光标的下方完成粘贴;

                            P(upper):如果是行内的复制或剪切操作,在光标右侧完成粘贴;如果是多行复制或剪切操作,在光标的上方完成粘贴;

                     ex模式的操作:

                            :p

八.模式切换:

                     编辑模式(命令模式)被称为vi编辑器的基础工作模式;所有其他模式之间进行切换的中转站

 

                     1.编辑模式-->ex模式:

                            “:”:表示进入ex模式并完成命令的执行;

                            “/”或“?”:开始ex模式中的匹配查找功能;

                                   /:默认是自上而下的查找顺序;

                                   ?:默认是自下而上的查找顺序;

 

                            n和N命令在各个匹配的关键字之间跳转:

                                   n:顺序查找

                                   N:倒序查找

                     2.ex模式-->编辑模式:

                            Esc

                            Enter

                            Backspace

                     3.编辑模式-->输入模式(插入模式):

                            i,I,a,A,o,O,s,S,C,cc

                            i:在光标所在位置的左侧开始输入;

                            I:在行首开始输入;

                            a:在光标所在位置的右侧开始插入;

                            A:在行尾开始输入;

                            o:在当前光标所在行的下方插入一个新行;

                            O:在当前光标所在行的上方插入一个新行;

                            s:删除光标所在位置的字符,在光标左侧开始输入;

                            S:删除光标所在行,在行首开始输入;

                            C:删除光标所在位置直到行尾,并且在行尾开始输入;

                            cc:相当于S模式;

                     4.输入模式-->编辑模式

                            Esc键

                     5.编辑模式-->替换模式

                            R:进入替换模式

                     6.替换模式-->编辑模式

                            Esc键

                     7.编辑模式-->可视化模式

                            v:按照字符为单位进行矩形选取;

                            V:按照行为单位进行矩形选取;

 

                            注意:

                                   1)在选取完成之后,可以使用d命令进行删除,也可以使用y命令进行复制;

                                   2)只要选取完成,即立刻返回编辑模式;

 

                            注意:所有的其他模式都只能和编辑模式相互切换:如果两种非编辑模式试图切换,则必须经过编辑模式。

九.替换模式:

                     r:不进入输入模式而替换光标所在位置的字符;

 

十.撤销命令:

                     U:撤销当前行内的操作;

                     u:撤销此前的一次编辑操作;

 

                     ^+r:撤销最后一次被撤销的操作;

 

十一.重复之前的一次编辑操作;

                     .

十二.打开多文档编辑;

                     1.vimfile1 file2 file3...

                            :next 查看或编辑后一个文档

                            :prev 查看或编辑前一个文档

                            :first 查看或编辑第一个文档

                            :last 查看或编辑最后一个文档

 

                     2.vim-o | -O file1 file2 file3..

                            -o:水平打开多个窗口

                                   ^+w,uparrow | down arrow;在多个窗口间切换;

                            -O:垂直打开多个窗口

                                   ^+w,leftarrow | right arrow;在多个窗口间切换;

                            :qa:退出所有

十三.ex模式中的常用命令:

                     1.显示和取消行编号:

                            :set number(简写为:set nu):显示行编号

                            :set nonumber(简写为:set nonu):取消行编号

                     2.开启或关闭字符大小写的敏感度:

                            :set ignorecase(set ic)

                            :set noignorecase(set noic)

                     3.开启或关闭自动缩进功能:

                            :set autoindent(简写为:set ai)

                            :set noautoindent(简写为:set noai)

                     4.开启或关闭语法着色:

                            :syntax on

                            :syntax off

                     5.开启或关闭查找高亮显示

                            :set hlsearch

                            :set nohlsearch(简写为:nohl)

                     6.另存为:

                            :w /PATH/TO/SOMEWHERE 全部另存为

                            :m,nw /PATH/TO/SOMEWHERE 部分另存为

                     7.从其他文件直接读取内容并添加到当前文件夹

                            :r /PATH/FROM/SOMEFILE

                     8与shell交互,调用shell命令

                            :!shell命令


以上是关于Linux初级程序员的vim编辑器的主要内容,如果未能解决你的问题,请参考以下文章

vim配置的初级道路---打造属于自己的Vim

vim编辑器初级

vim编辑器初级

vim编辑器初级

vim编辑器初级

Linux初级运维命令总结