vim編輯器使用詳解


文件編輯器類別:

    1)全屏文本編輯器:

            nano

            vi,vim

            emacs

    2)行文本編輯器:

          sed

vi--->vim

模式化的編輯器:多種不同模式

   編輯模式(命令模式)

   輸入模式

   末行模式:vim有許多內置命令,此模式即爲其命令的接口

1、打開VIM

  vim

       vim [OPTIONS] [FILE]...

               +#: 快速定位至第#行

                +:快速定位至最後一行

        +/PATTERN: 快速定位至被模式第一次匹配的行

2、模式間轉換

   默認爲編輯模式--->輸入模式:

      i:insert,在當前光標處,轉換爲輸入模式

      I:在當前光標所在行行首,轉換爲輸入模式

      a:append,在當前光標所在出字符後方,轉爲爲輸入模式

      A:在當前光標所在行行尾,轉換爲輸入模式

      o:在當前光標所在行的下方新建一個空白行,並轉換爲輸入模式

      O:在當前光標所在行的上方新建一個空白行,並轉換爲輸入模式

  輸入模式--->編輯模式:按ESC鍵

  編輯模式--->末行模式:  :

  末行模式--->編輯模式:按ESC鍵

  (注:輸入模式無法直接切換至末行模式)


3、退出vim

   末行模式:

               q  退出

               w  另存爲    w /tmp/test

               q! 強制退出,不保存編輯的內容直接退出

               wq 保存退出

                x 保存退出

          wq!,x! 強制保存退出

   編輯模式(命令模式):

              ZZ:保存退出


4、編輯命令

 ①、光標移動:

    字符間移動:h,j,k,l    左,下,上,右  #[h,j,k,l]:一次移動N個字符間距

    單詞間移動:w 下一個單詞的詞首

            e 當前或下一個單詞的詞尾

            b 當前或前一個單詞的詞首    #[w,e,b]

    行首行尾間跳轉:

            0:跳轉至絕對行首

            ^: 行首的第一個非空白字符

            $: 跳轉絕對行尾

   行間快速跳轉:#G 第#行  末行模式:# 跳轉至第#行

             G 文尾

            gg 文首

  句間移動:

             )

     (

        段落間移動:

     }

             {

②、編輯操作:

        x:刪除光標所在出字符   #x: 刪除光標所在處及向後的公#個字符

        d:刪除命令 

       dd:刪除光標所在行  相當於D

      #dd:刪除光標所在行及下的共#行

 與跳轉命令一同使用:

       d$:刪除光標所在處至行尾的內容

       d0,d^

       dw,db,de

   r:替換命令   R

   p:粘貼,

     行級別:

         p:粘貼在光標所在行下方

         P:粘貼在光標所在行上方

    小於行級別:

         p:粘貼在光標所在出的後方

         P:粘貼在光標所在出的前方

    y:複製命令

   yy:刪除光標所在行 相當於Y

   #yy:刪除光標所在行及下的共#行

    與跳轉命令一同使用:

         y$:刪除光標所在處至行尾的內容

         y0,y^

         yw,yb,ye

     

   c:修改    刪除後進入輸入模式

      C cc c$ c^ c0

     

   u:撤銷   #u 一次撤銷最近的#次操作

   ctrl+r    撤銷此前的撤銷

   . 重複前一條命令 


附:

VimTutor中文版


5、可試化模式

    v:選擇光標所在行的光標左側的內容

    V:光標所在行整行都被選定

6、編輯模式下的翻屏命令

   Ctrl+f:向文件尾部翻一屏

   Ctrl+b:向文件首部翻一屏

  Ctrl+d:向文件尾部翻半屏

   Ctrl+u:向文件首部翻半屏


末行模式:


7、文本查找   

        支持正則表達式

        /PATTERN  向尾部進行 n,N

        ?PATTERN  向首部進行 n,N

8、文本替換

       有部分內置命令用於編輯操作,此時可使用地址定界法進行

       地址定界:startline[,endline]

                        #:第#行

                        .:當前行

                        $:最後一行

                        %:全文

       相對定界:

                         +#:從指定位置向下#個行  10,+5

                         -#:從指定位置向上#個行  10,-5

              文本替換:“s”

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

                         /:用作分隔符,用於分割“要查找的內容”和“替換爲的內容”此分隔符可使用其他符號如:@,#。

                         要查找的內容,可使用正則表達式,可以在後面“替換爲的內容”部分使用“&”全部引用

                         替換爲的內容,不可使用正則表達式,一般爲正常文本但可以使用正則表達式中\1,\2...保存的內容

                         修飾符:

                                i:查找時不區分字符大小寫

                                g:全局替換


9、多文件模式

     打開文件:vim [OPTIN]...[FILE]...

        

      多文件:

           末行模式:

                    next,prev,first,last

           保存並退出所有文件:

                    wqall,,wall,qall

      多窗口:

           -o:上下分割窗口

            -O:左右分割窗口

      Ctrl+w,ARROW

      注意:單個文件也可以分割爲多個窗口進行查看

       Ctrl+w,放開再按s  上下分割

       Ctrl+w,v         左右分割

10、界面顯示特性

        末行模式:

             顯示行號:默認沒開啓

                  set number,set nu

                  set nonumber,set nonu

             語法高亮:

                  syntax on

                  syntax off

             搜索高亮

                  set hlsearch

                  set nohlsearch

             自動縮進:默認沒開啓

                  set autoindent,set ai

                  set noauntoindent,set noai

             區分字符大小寫的開啓和關閉

                  set ignorecase,set ic

                  set noignorecase,set noic

             高亮顯示匹配的符號對兒:默認開啓

                  set showmatch,set sm

                  set noshowmatch,set nosm

             忽略字符大小寫

                  set ic

                  set noic

11、vim的配置文件

    全局:/etc/vimrc

    個人:~/.vimrc

12、在vi中執行命令和導入文件

      在末行模式下:  

          導入文件:  r FILENAME

          執行命令:  !COMMAND

          導入執行命令的結果:   r!COMMAND

13、定義快捷鍵和替換

   在末行模式下:

        替換:ab mymail [email protected]   #文中後面所寫的所有mymail將被替換爲[email protected]

        快捷鍵: map CRTL+p  I#<ESC>    #按Ctrl+p鍵就會在光標所在行行首插入#並返回編輯模式


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