vim使用說明

vim使用說明

一、定義

vivisual interface

vimvisual interface iMproved

 

擴展:

Emacssedawknano

 

二、模式

1三種模式:

    編輯模式(命令模式)

    輸入模式

    末行模式

2、模式切換

    1vi/vim file:默認進入編輯模式(命令模式)

    2、編輯模式(命令模式)-----> 輸入模式

        i:在緊挨光標所在位置的前面輸入。

        I:在行首輸入

        a:在緊挨光標所在位置的後面輸入(光標向後移動1個字符,再輸入)

        A:在行尾輸入

        o:在光標所在行下面新建輸入新行

        O:在光標所在行上方新建輸入新行

    3、輸入模式------> 編輯模式(命令模式)

    Esc

    4、編輯模式(命令模式)-----> 末行模式

    :

    5、末行模式------> 編輯模式(命令模式)

    Esc


三、打開關閉

1、打開

    vim 

    vim FILENAME:打開文件到編輯模式

    vim +# FILENAME#爲行數):打開文件並定位光標到第#

    vim +/PATTERN:打開文件並定位光標到匹配第一個PATTERN的行

2、關閉

末行模式下:

    :wq  保存退出

    :q 退出

    :q!  不保存強制退出

    :x 保存退出

編輯模式(命令模式)下:

    ZZ 保存退出

 

四、編輯模式(命令模式)命令

1、光標跳轉(移動)

    h:向左移動一個字符

    j:移動到光標正對下一行的字符

    k:移動到光標正對上一行的字符

    l:向右移動一個字符

等同於小鍵盤的方向鍵(h左,j下,k上,l右),可以與數字同時使用。例:#h向左移動#個字符

    w:移動到後一個單詞的詞首

    e:移動到當前或後一個單詞的詞尾

    b:移動到當前或前一個單詞的詞首

w,e,b同樣可以與數字同時使用,#w,#e,#b

    ^:移動到行首第一個非空字符

    0:移動到行首

    $:移動到行尾

    #G:移動到第#行第一個非空字符

    1Ggg移動到第一行第一個非空字符

    G:移動到最後一行第一個非空字符

2、編輯命令

    x:刪除光標所在位置的字符

    #x:刪除光標所在往後的#個字符

    #xp:剪切粘貼

    r #:替換光標所在處字符爲#

    d:刪除光標所在的行

        d^:刪除光標所在至行第一個非空字符

        d$:刪除光標所在至行尾

        d0:刪除光標所在至行首

        dw:刪除光標所在至下一個單詞的詞首

        de:刪除光標所在至當前或下一個單詞的詞尾

        db:刪除光標所在至當前或上一個單詞的詞首

        dd:刪除光標所在整行

注:d命令刪除的內容會被vim編輯器保存至緩衝區

    p:粘貼

        1、複製或刪除的內容不是一個完整的行

            p小:粘貼至當前光標所在處後面

            P大:粘貼至當前光標所在處前面

        2、複製或刪除的內容是完整行(可是多行)

            p小:粘貼至當前光標所在行下方

            P大:粘貼至當前光標所在行上方

    y:複製,與d用法相同

        y^:複製光標前一字符至行第一個非空字符

        y$:複製光標所在至行尾

        y0:複製光標所在至行首

        yw:複製光標所在至下一個單詞的詞首

        ye:複製光標所在至當前或下一個單詞的詞尾

        yb:複製光標所在至當前或上一個單詞的詞首

        yy:複製光標所在整行

    c:修改,刪除指定字符,並切換到輸入模式

        c^:修改光標之前一個至行第一個非空字符

        c$:修改光標所在至行尾

        c0:修改光標所在至行首

        cw:修改光標所在至下一個單詞的詞首

        ce:修改光標所在至當前或下一個單詞的詞尾

        cb:修改光標所在至當前或上一個單詞的詞首

        cc:修改光標所在整行

    u:撤銷上一步操作

    ctrl+r:恢復撤銷的操作

    .:重複前一個編輯命令

3、翻屏

    ctrl+f:向後一屏

    ctrl+b:向前一屏

    ctrl+d:向後半屏

    ctrl+u:向前半屏


五、末行模式

1、地址定界匹配

    :start_pos,end_pos

    :#    #

    :#,&  #行到&

    :.  當前行

    :$  最後一行;等同於命令模式下的G

    :%  全文;等同於:1,$

2、查找

    /pattern:向尾部進行

    ?pattern:向首部進行

    n:與命令同方向

    N:與命令反方向

3、替換

    s:在末行模式下,在地址定界的範圍內完成查找替換操作

        格式:

        s/要查找的內容/想要替換成的內容/修飾符

            查找內容:可使用模式匹配

            替換內容:不能使用模式,但可以使用後向引用符號,以引用前面模式中的分組括號所匹配到的內容;引用:

                () \1,\2……

                &:引用查找內容匹配到整個內容

            修飾符:

                i:忽略大小寫

                g:全局

            分隔符:習慣用 /,查找替換的內容若出現/。可以:

                1、用轉義符\。寫成:\/

                2、使用其他字符代替分隔符:例如@#等 

4、導入

    :!command    執行系統命令

    :r filename    導入文件;在光標所在位置寫入導入文件的內容

    :r!command   將命令結果寫入打開的文件光標所在位置

 

六、編輯多文件

同時編輯修改多個文件

    vim FILE1FILE2……

1、切換文件

    :next  下個文件

    :first 第一個文件

    :prev  上一個文件

    :last  最後一個文件

2、退出

    :wqall  全部保存退出

    :q!all  全部強制退出

3、多文件窗口分割

    vim -o|-O FILE1 FILE2……

        -o:水平分割

        -O:垂直分割

4、 單文件分割

    ctrl+w,s水平分割

    ctrl+w,v   垂直分割

操作:ctrl+w,然後按s或v


七、特性定製

1、行號

    :set nu

    :set nonu

2、括號匹配

    :set sm

    :set nosm

3、自動縮進

    :set ai

    :set noai

4、高亮搜索

    :set hlsearch

    :set nohlsearch

5、語法着色

    :syntax on

    :syntax off

6、忽略大小寫

    :set ic

    :set noic

使以上特性永久性生效:

    全局:/etc/vimrc

    個人:~/.vimrc


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章