zoukankan      html  css  js  c++  java
  • vi编辑器

    vivim的关系:vimvi的一个升级版本,大多linux发行版本已内置、集成vi,可直接使用,而vim需要安装。

    其他linux编辑器有:Emacsnano等。

     

    vi编辑器有三种模式:普通模式、命令模式、插入模式。

    1. 普通模式:一般在进入文件时就是该模式,在此模式中,可以通过上下左右键移动光标,可以删除字符或是删除整行,可以复制粘贴,但不能编辑。

    2. 插入模式:一般模式可以复制粘贴删除,但要编辑,需按下i,I,o,O,a,A,r,R等字母,才会进入编辑模式,按下按钮后,屏幕左下方会出现INSERTREPACE等字样,如果要回到普通模式,按Esc键。

    3. 命令模式:在普通模式下输入“:”或“/”就可以将光标移到末行,在此模式中,可以搜寻数据,读取,存盘,大量字符替换,退出vi,显示行号等。按Esc键可从命令模式切换到普通模式。

     

    普通模式操作:

    光标移动:hlkj下。

    翻页:ctrl+f向前翻整页,ctrl+b向后翻整页。ctrl+u向前翻半页,ctrl+d向后翻半页。

    ^:将光标快速跳转到本行的行首字符。

    $:将光标快速跳转到本行的行尾字符。

    w:将光标快速跳转到当前光标所在位置的后一个单词的首字母上。

    b:将光标快速跳转到当前光标所在位置的前一个单词的首字母上。

    e:将光标快速跳转到当前光标所在位置的后一个单词的尾字母。

     

    set nu  在编辑器中显示行号。

    set nonu 取消编辑器中行号显示。

     

    1G 跳转到文件的首行。

    跳转到文件的末尾行。

    #G 跳转到文件中的第#行。

     

    删除操作:

    x:删除光标处的单个字符。

    dd:删除光标所在行。

    dw:删除当前字符到单词尾(包括空格)的所有字符。

    de:删除当前字符到单词尾(不包括单词尾部空格)的所有字符。

    d$:删除当前字符到行尾的所有字符。

    d^:删除当前字符到行首的所有字符。

    J:删除光标所在行行尾的换行符,相当于合并两行为一行。

     

    撤销操作:

    u:取消最近一次的操作。

    U:取消对当前行的所有操作。

    ctrl+r:取消u的操作。

     

    复制与粘贴:

    yy:复制当前行整行的内容到vi缓冲区。

    yw:复制当前光标到单词尾字符的内容到vi缓冲区。

    y$:复制当前光标到行尾的内容到vi缓冲区。

    y^:复制当前光标到行首的内容到vi缓冲区。

    p:读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容)。

     

    进入插入模式:

    i:在当前光标处进入插入状态。

    a:在当前光标后进入插入状态。

    A:将光标移动到当前行的行末并进入插入状态。

    o:在当前行的的下面插入新行,光标移动到新行的行首,进入插入模式。

    O:在当前行的上面插入新行,光标移动到新行的行首,进入插入模式。

    cw:删除当前光标到所在单词尾部的字符,并进入插入状态。

    c$:删除当前光标到行尾的字符,并进入插入状态。

    c^:删除当前光标之前到行首的字符,并进入插入状态。

     

    插入模式操作:

    方向键:光标上下左右移动。

    Home:快速定位光标到行首。

    End:快速定位光标到行尾。

    PageUp:进行文本的向上翻页。

    PageDown:进行文本的向下翻页。

    Backspace:删除光标左侧的字符。

    Del:删除光标位置的字符。

     

    命令模式操作:

    字符串查找操作:

    /word:从上而下在文件中查找字符串“word”。

    ?word:从下而上在文件中查找字符串“word”。

    n:定位下一个匹配的被查找字符串。

    N:定位上一个匹配的被查找字符串。

     

    字符串替换操作:

    :s/old/new:将当前行中查找到的第一个字符串“old”替换为“new”。

    :s/old/new/g:将当前行中查找到的所有字符串“old”替换为“new

    :#,#s/old/new/g:在行号“#,#”范围内替换所有的字符串“old”为“new”。

    :%s/old/new/g:在整个文件范围内替换所有的字符串“old”为“new”。

    :s/old/new/c:在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认。

     

    使用vi打开多个文件:

    vi file1 file2 file3

    Vi多文件操作命令:

    :args:显示多文件信息

    :next:向后切换文件

    :prev:向前切换文件

    :first:定位首文件

    :last:定位尾文件

    ctrl+^:快速切换到编辑器中切换前的文件

  • 相关阅读:
    CodeForces 19D Points (线段树+set)
    FZU 2105 Digits Count
    HDU 5618 Jam's problem again(三维偏序,CDQ分治,树状数组,线段树)
    HDU 5634 Rikka with Phi (线段树)
    Java实现 蓝桥杯 算法提高 转圈游戏(暴力快速幂)
    Java实现 蓝桥杯 算法提高 转圈游戏(暴力快速幂)
    Java实现 蓝桥杯 算法提高 转圈游戏(暴力快速幂)
    Java实现 蓝桥杯 算法提高VIP Substrings(暴力)
    Java实现 蓝桥杯 算法提高VIP Substrings(暴力)
    Java实现 蓝桥杯 算法提高VIP Substrings(暴力)
  • 原文地址:https://www.cnblogs.com/wujuntian/p/4770725.html
Copyright © 2011-2022 走看看