1. 程式人生 > >關於VIM,知道這些就夠了

關於VIM,知道這些就夠了

VIM

基本操作

打開文件

    vim [option] file
    +n. :打開文件後,讓光標處於第n.行的行首,+默認行尾
                    \\ vim +5 file 打開file並讓光標處在第5行

進入插入模式

    i           \\ 在光標處輸入
    I           \\ 當前光標行的行首輸入
    a           \\ 在光標所在處後面輸入
    A           \\ 在當前光標所在行的行尾輸入
    o           \\ 光標下方開一個新行
    O           \\ 光標上方開一個新行

命令模式基本操作

    x           \\ 剪切光標處字符,n.x剪切光標起始處n.個字符
    p           \\ (小寫p)如果緩沖區為整行,在光標下方粘貼,否則在光標所
                  \\ 在後面粘貼,xp可以實現字符換位
    P           \\ (大寫P)如果緩沖區為整行,在光標上方粘貼,否則在光標後
                  \\ 面粘貼
    ~           \\ 轉換文檔中光標所在處字母大小寫
    J            \\ 刪除當前行後的換行符
    r            \\ 替換光標所在處字符,如rm將光標處字符換成m
    R           \\ 進入replace模式,此模式下輸入的字符會替換光標所
                \\ 在位置的字符
    ctrl+f,b:向下或向上翻一屏       ctrl+d,u:向下或向上翻半屏

    u              \\ 撤銷最近的更改
    ctrl+r      \\ 重做最後的撤銷
    n.u         \\ 撤銷之前的n.次更改
    U           \\ 撤銷光標落在這行的所有對此行更改、
    .           \\ 重復上一個操作
    n.          \\ 重復上一個操作n次

擴展模式或尾行模式

命令模式按“:”英文冒號進入擴展模式

    w               \\ 保存
    q               \\ 退出
    wq              \\ 保存退出
    q!              \\ 強制退出,不保存
    r filename      \\ 讀文件到當前文件
    w filename      \\ 寫文件到指定文件
    !command        \\ 執行命令
    r!command       \\ 讀入命令輸出
    ①. 地址定界
        起始位置,結束位置跟操作
        如   1y   復制第一行
            2,4d 刪除第二行到第四行
            2,+4y 復制第二行到第六行
        .   代表當前行
        $   最後一行
        %   全文,等同於1,%
        起始位置和結束位置可以使用正則表達式如:
        /[0-9]/,/[0-9]/d        \\ 表示刪除第一次匹配到包含數字的行到第二次匹
                                \\ 配到包含數字的行
        可以使用的操作命令包括d,y,w file(將範圍內的行存如指定文件)
        r file                   \\(在指定位置插入指定文件內容)
    ②. 查找替換
        查找:/pattern向下查找(pattern為要查找的內容)
             ?pattern向上查找
            n,N與命令同方向或反方向匹配(輸入匹配命令之後按n,N)

        替換格式:s/查找的內容/替換的內容/修飾符
        查找的內容可以使用模式(正則)
        替換的內容不能使用模式但可以使用後向引用,還可以使用&引用前面查找到的整個內容
        修飾符:
        i:      忽略大小寫
        g:      全局替換,默認情況下每一行只替換第一次出現
        gc:     全局替換,替換前詢問
        查找替換中的分隔符/可以替換為如@#等字符
        如:
        刪除文件中的行首的空白字符
        :s@^[[:space:]]\+@@g
        在文件中所有以空白字符開頭的行首添加一個#號
        1,$s@^[[:space:]]@#\1@g 

最後還有一張圖

這張圖包含命令模式大多數命令,如果能記住的話,絕對裝逼利器,還有原圖,太大無法上傳,給個連接,看得上的可以下載https://share.weiyun.com/5YxLhPX

技術分享圖片

關於VIM,知道這些就夠了