码迷,mamicode.com
首页 > 系统相关 > 详细

vim编辑器详细使用方法

时间:2018-04-09 15:52:10      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:系统   运维   

vi编辑器:全屏的文本编辑器
    vi:Visual Interface,可视化界面;

        vim: vi iMproved,相当于vi的升级版工具;

        vim相对于vi的新特性:语法着色显示、更多的命令、历史记录;

    vi/vim:模式化文本编辑器
        模式有以下几种:
            编辑模式(命令模式),默认工作模式;
            插入模式(输入模式),文本信息的自由编辑;在左下角有"Insert"标记;
            ex模式(末行模式),对于编辑器本身某些属性和功能的设定;也可以进行文本的编辑操作;
            其他辅助模式:
                替换模式:输入的信息直接替换光标所在位置的内容;
                可视化模式:

    vi/vim的相关使用操作:
        一.打开vi/vim操作界面:
            1.vi/vim命令;
            2.vim file:
                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模式中的光标移动:
                :# :直接将光标移动至指定行号"#"的行首;
                :1 :直接将光标移动至文档的第一行行首;
                :$ :直接将光标移动至文档的最后一行行首;

        四.翻页:
            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, yb, yG, ygg, y0, y$, y^
                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.vim file1 file2 file3 ...
                :next 查看或编辑后一个文档
                :prev 查看或编辑前一个文档
                :first 查看或编辑第一个文档
                :last 查看或编辑最后一个文档

            2.vim -o | -O file1 file2 file3 ...
                -o:水平打开多个窗口
                    ^+w, up arrow | down arrow:在多个窗口间切换;
                -O:垂直打开多个窗口
                    ^+w, left arrow | right arrow:在多个窗口间切换;

        十三.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命令
                :!COMMAND



vim编辑器详细使用方法

标签:系统   运维   

原文地址:http://blog.51cto.com/holmes975/2096055

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!