vim 文本編輯器

Linux VIM文本編輯器

vim概述

   Linux提供了一系列功能強大的編輯器,如vi和ASCIItext,Unicode 是linux系統的第一個全屏幕交互式編輯器。vi(vim)命令繁多但是如果使用靈活之後將會大大提高效率。vi是“visual interface”的縮寫,vim是vi IMproved(增強版的vi)。在一般的系統管理維護中vi就夠用,如果想使用代碼加亮的話可以使用vim。vim有3種工作模式,分別是命令行模式、插入模式、底行模式。


命令行模式: 最初進入的一般模式,該模式下可以移動光標進行瀏覽,整行刪除,但無法編輯文字。


插入模式: 只有在該模式下,用戶才能進行文字的編輯輸入,用戶可以使用[ESC]鍵回到命令行模式。

底行模式: 該模式下,光標位於屏幕底行,用戶可以進行文件保存或退出操作,也可以設置編輯環境,如尋找字符串、列出行號。

vim的創建

      # vim [options] [file ..]


      +#:打開文件後,直接讓光標處於第#行的行首。(#表示註釋行)

 +/PATTERN:打開文件後,直接讓光標處於第一個被PATTERN匹配到的行的行首。

vim的保存

    w:  //保存文件

 w flie:  //保存至flie文件

vim的退出

   q :  //退出編輯器,如果文件已修改請使用下面的命令

   q!:  //退出編輯器,且不保存

   wq:  //退出編輯器,且保存文件

    ZZ:  //保存並退出

    x:  //保存並退出

 vim模式轉換:

     編輯模式 --> 命令行模式 ESC

     命令行模式--> 編輯模式 shift+i

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

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

    

vim插入模式中文本的插入

    要輸入內容,還需要進入插入模式。進入插入模式除了使用快捷鍵i之外,還可以使用以下快捷鍵

     i:insert,在光標所在處輸入

      a: 進入插入模式並將光標放在當前光標之後

      o:在當前光標所在的行的後面插入一個新行,進入插入模式並將光標放置在新行。

      I:在光標所在行的行首輸入

      A:進入插入模式並將光標放在當前光標所在的行尾

      O:在光標所在處的上方打開一個新行                                    


vim的編輯命令:


查找替換的實現:

在Vim編輯器中,實現簡單查找功能是“/”,從當前位置開始向下查找,其格式如下,在命令模式中輸入:/pattern

如果當前查找到的字符串不是用戶需要查找的字符串,可以使用以下快捷鍵:
    n:跳轉到下一個字符串
    N:跳轉到上一個字符串。
   在Vim編輯器中,使用命令/是從當前位置開始向下查找,還可以使用命令?執行反向查找,即從當前位置開始向上查找。基本格式爲:?pattern

   i:忽略大小寫;

     g:全局替換,意味着一行中如果匹配到多次,則均替換

    可把分隔符替換爲其它非常用字符:

          s@@@    s###


    要讓Vim編輯器查找時忽略字符串的大小寫,可以使用以下命令:
    :set ignorecase
    關閉忽略大小寫功能:
    :set noignorecase
    高亮顯示查找結果,在命令模式中執行:
    :set hlsearch
    關閉高亮顯示查找結果:
    :set nohlsearch

     

    字符編輯:

          x:刪除光標所在處的字符

       #x:刪除光標所在處起始的#個字符

       xp:交換光標所在處的字符與其後面的字符的位置

    替換命令:

          r:替換光標所在處的字符


刪除命令:

        d:刪除命令,可結合光標跳轉字符,實現範圍刪除;

      d$:刪除當前光標到行尾的所有字符

      d^:刪除當前光標到行首的所有字符

      dw:刪除當前光標處的單詞,包括詞尾空格

      de:刪除當前光標處的單詞

        dd:刪除光標所在處的行;刪除當前光標所在行。

       #dd:刪除光標所處的行起始的共#行

       J:將當前光標所在行和下一行合併(相當於刪除行尾的換行符) 

   

  複製和粘貼
      Vim命令模式提供了幾個複製粘貼的快捷鍵。
      yy: 複製光標所在的行到緩衝區
      nyy:複製n行到緩衝區
      y^: 複製當前光標所在的位置到行首的內容到緩衝區
      y$: 複製當前光標所在的位置到行尾的內容到緩衝區
    使用了以上快捷鍵執行復制操作以後,只要將光標移動到需要粘貼的位置,按下p鍵即可粘貼複製的文本。(若按下P則將緩衝區內容粘貼到當前光標之前)      

  

vim光標跳轉

    字符間跳轉

         h:左

           j:下

           k:上

           l:右

    #COMMAND:跳轉由#指定的個數的字符;

    單詞間跳轉

             w:下一個單詞的詞首;

             e:當前或後一個單詞的詞尾;

             b:當前或前一個單詞的詞首;

     #COMMAND:跳轉由#指定的個數的單詞;

    行首行尾跳轉

             ^:跳轉至行首的第一個非空白字符;

             0:跳轉至行首;

             $:跳轉至行尾;

      行間跳轉

            #G: 跳轉至由#指定的行;

          1G, gg: 第一行;

             G: 最後一行;

                                    

      句間跳轉)和(

        段間跳轉}和{

                                    

vim翻屏操作:

        Ctrl+f:向文件尾翻一屏

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

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

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

        Enter:按行向後翻


末行模式下  地址定界:

         :start_pos[,end_pos]


         #:特定的第#行,例如5即第5行;

         .:當前行;

         $:最後一行;

         #,#:指定行範圍,左側爲起始行,右側爲結束行;

         #,+#:指定行範圍,左側爲超始行絕對編號,右側爲相對左側行號的偏移量;例如:3,+7

         .,$-1

         1,$

         %:全文


  分割窗口:
      將Vim編輯器分割成上下兩個窗口
       :split
       將Vim編輯器分割成左右兩個窗口
      :vsplit
      分割新窗口並打開空白文本
      :new
      分割窗口並打開新文件
      :new+文件名                

 

關閉窗口
(1)如果要關閉光標所在的窗口(如果光標不在需要關閉的窗口中,使用快捷鍵Ctrl+W),可以在當前窗口的命令模式中使用命令:close
(2)如果要關閉當前窗口外的其他窗口,可以在當前窗口的命令模式中使用命令only

——控制窗口大小
(1)要控制分割窗口的大小,可以再分割窗口時加上窗口大小參數。例如分割一個只有6行的新窗口“:6split”、“6vsplit”、“6new”...
(2)如果將當前光標所在的窗口放大,可以使用快捷鍵Ctrl+W++
(3)如果要縮小窗口,可以使用快捷鍵Ctrl+W+ -

從衆多窗口中退出
    qall:關閉所有保存過的窗口,可速記爲quit all
    wall:保存所有修改過的窗口,可速記爲write all
    wqall:保存並退出所有窗口,可速記爲write quit all
    qall!:不保存強制退出所有窗口,可速記爲quit all! 




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