• Vim编辑器基本操作学习(一)


     
    最近在服务端编辑文件总不可避免要使用vim编辑器,下面就对学习到的常用命令进行总结,以便自己以后查看。
     

    基本编辑命令

     
    删除字符:x
    删除一行:dd
    删除换行符:J,同时将两行合并成一行
    撤销上一次的操作:u
    重做,反转撤销:Ctrl+R
     
    一些基本编辑命令可以使用命令计数,比如向下移动3行,可以直接使用3j,代替jjj;另比如dd操作等。
     

    其他编辑命令

     
    i: 当前光标之前插入文本
    a: 当前光标之后插入文本
    o: 另起一行,在当前行的下一行开始编辑
    O: 另起一行,在当前行的上一行开始编辑
     

    光标移动命令

     
    h, j, k, l就不说了,左,上,下,右
    w(word): 移动光标到下一个word的开头;
    b(backward):移动光标到上一个word的开头;
    e(end of word): 移动光标到下一个word的末尾;
    ge: 移动光标到上一个word的末尾;
    上述所有都是小写,如果将w, b, e 设置成大写,那么就将按照空格分隔移动;
    :set iskeyword
     
    $ 将光标移动到当前行行尾;
    0 将光标移动到当前行行首;
     
    fx可以在当前行查找第一个x并移动到该位置,停留在被搜索字符的下一个位置,这种用法称为单字符查找;
    而使用Fx就会反向查找x字符;
    tx命令比较类似,但是会停留在被搜索字符上;
    Tx反向查找;
    这四个命令都不会跳到下一行上去,都可以使用”;"来重复,“,”也是重复,但是方向相反
     

    匹配括号

     
    编写程序的时候,容易被括号弄糊涂,但是使用”%”可以非常方便地与当前光标下的括号匹配,比如()[]{};
    如果当前光标并不在括号上,”%”同样可以向前匹配到第一个遇到的括号;
    可以通过命令:set matchpairs查看匹配的括号类型
     

    移动到指定行

     
    G命令可以移动到文件的最后一行;
    使用“行数”+G可以将当前光标移动到该指定行数的位置;
    gg命令是定位到第一行的快捷方法,等同于1G;
    另外一种方式就是移动到指定的百分比,使用“百分比”+%即可;
    如果只想让光标定位到当前显示屏幕中的上,中,下,那么可以使用H(Home), M(Middle), L(Last)
     
    有三种方法可以得到当前光标的位置:
    1. 使用Ctrl+G命令,可以得到类似下面的提示:"map任务分析趋势图.numbers" 1116 lines --2%--
    2. 使用:set number(nonumber)命令,可以查看/取消查看当前文件所在行;
    3. 设置ruler选项,可以在Vim的右下角窗口显示当前光标的位置;
     
    当执行G跳转到指定的行后,vim会记住起跳的位置,这个位置是一个标记,使用命令”``"可以帮助跳转到刚才的出发点。
     
     

    滚屏

    Ctrl+U(Up) 会使窗口向上滚动半屏;
    Ctrl+D(Down) 会使窗口向下滚动半屏;
    Ctrl+E 可以使窗口向上滚动一行;
    Ctrl+Y 可以使窗口向下滚动一行;
    Ctrl+F(Forward) 可以使窗口向上滚动一整屏;
    Ctrl+B(Backward) 可以使窗口向下滚动一整屏;
    zz命令可以将光标当前所在行置于屏幕中央;
    zt(top)命令可以将光标当前所在行置于屏幕顶端;
    zb(bottom)命令可以将光标当前所在行置于屏幕底端;
     

    搜索与查找

     
    "/搜索字符串” 可以从当前光标位置处开始向下搜索该字符串,使用n,N可以匹配下一个找到的字符串;
    “?搜索字符串” 与/的使用方式正好相反,向前搜索,而此时使用n,N也会相反;
    注意搜索时的一些特殊字符: “.*[]^%/?~$”,如果要查找的内容包括这些字符,请使用进行转义;
     
    incsearch:使得键入目标字符串时vim就开始字符串搜索工作,可以在未完全键入字符串时就能找到目标,可选择回车跳转到当前匹配的位置或继续输入以进行搜索;
    nowrapscan/wrapscan:打开wrapscan会在搜索到达文件头或者末尾时会从新开始搜索,关闭此开关(nowrapscan)可以在文件结束时停止;
     
     
     

    退出vim

     
    ZZ: 可以保存当前的数据,然后退出
    :q!: 放弃编辑,退出vim,命令之后加回车
    :q:退出,但是如果已经对文件进行了编辑,vim会拒绝不负责任的退出
    :e!:如果想放弃当前所有的修改,并重新打开编辑器,用该文件的初始内容作为开始继续编辑,使用此命令
    :help 显示vim的帮助文件,也可以使用F1显示
     

    一些其他的常用命令

     
    在编辑文件的时候按照行对文件内容进行删除时,可以使用G转到文件末尾,然后使用:1,.d命令;
    如果想要删除某行到当前行的内容,直接替换1即可;
    如果想要显示当前文件的行号,可以使用set nu!
    如果想要删除整个文件(变成空白文件),先gg跳转到首行,再执行dG清空整个文件。
     

    Vim的搜索模式

     

    ^字符匹配一行的开头;
    $字符匹配一行的末尾;
    如果同时加上^和$,那么将只会匹配到单行文本就是^和$之间的字符串;
    .可以匹配到任何字符,比如”c.m"可以匹配任何前一个字符是c后一个字符是m的情况,不管中间字符是什么;
    对于特殊字符,可以加上反斜杠进行处理。
     

    搜索后的跳转命令

     

    使用``可以在两点之间反复跳转。
    Ctrl+O, 跳转到更早些时间停留光标的位置; 
    Ctrl+I, 跳转到后来停置光标的位置;
    什么是跳转?只要你执行一个命令使得光标定位于当前行之外的某行上,都叫做一个跳转,包括/和n这些搜索命令。但是字符搜索命令f,F不算是跳转,h,i,j,k这些也都算是字符操作,不算是跳转。
     
  • 相关阅读:
    ByteArrayInputStream&ByteArrayOutputStream源码分析
    常用FastJSON的SerializerFeature特性及日期转换格式
    SpringAware
    Zuul(SpringCloud学习笔记一)
    RabbitMQ和SpringBoot的简单整合列子
    Cngigure和BUS实现远端配置
    vagrant安装homestead环境使用总结
    sublime安装插件
    vagrant配置(假设已经安装好了vagrant并且下载好了box)
    linux php安装配置oci8模块
  • 原文地址:https://www.cnblogs.com/mmaa/p/5789897.html
Copyright © 2020-2023  润新知