1. 程式人生 > >vim學習小結

vim學習小結

參考書籍《Linux 從入門到精通》第二版(劉憶智 等編著)

Vim編輯器

背景:Vim的設計哲學就是讓使用者能夠在主鍵盤區完成所有工作。

vim是vi的增強版本,vim分為插入和命令兩種模式

插入模式下可以輸入字元

命令模式下可執行除了輸入字元之外的所有操作,包括儲存、搜尋、移動游標等。

1.編輯和儲存

 啟動vim時自動處於命令模式

編輯一個檔案:

  可以在命令列下輸入vim file(如果file不存在,那麼vim會自動新建一個名為file的檔案),啟動vim時自動處於命令模式,按i鍵可以進入插入模式(防坑:按鍵之前請確保當前輸入法是英文), 此命令用於在當前游標所在處插入字元。vim會在左下角提示使用者此時所處的模式。

示例:

vim test.py進入檔案內,此時為命令模式

輸入i後,進入插入模式:

輸入想要輸入的內容後,按Esc鍵回到命令模式,此時左下角的“-- 插入 --”提示消失,告訴使用者正處於命令模式下。

儲存檔案:

下一步,需要儲存這個檔案。需要使用 “:” 命令在底部開啟一個命令列,此時游標閃爍,等待使用者輸入命令

:q     簡單退出,如果有修改的話,vim會拒絕退出並在底部顯示提示資訊

:q!    強制退出

:w    儲存不退出

:wq  儲存並退出

:wq  newfilename  儲存退出並另存為新檔名,如果newfilename已存在,可加 ! 強制覆蓋。

2.搜尋

 /string   向前查詢(從游標開始的地方“朝向檔案尾”)

 ?string   向後查詢(從游標開始的地方“朝向檔案頭”)

這裡的“前”指的是“朝向檔案尾”,“後”指的是朝向檔案頭,跟常見理解的意義不太一樣,可以稍稍留意下,通常常用的也就是/string。那麼查詢到字串之後,想跳轉到下一個出現string的位置如何是好呢。

在首次回車查詢之後,按下“n”跳轉到下一個出現string的地方,按下“N”跳轉到上一個出現string的地方。示例:

3.替換

整體格式 :{作用範圍}s/{目標}/{替換成}/{替換標誌}

先看一個示例,稍後一一來解釋

示例::%s/prints/print/g

回車之後顯示如圖,所有prints已經被替換成了print

 3.1 首先,作用範圍

  1,4表示從第1行到第4行

  n,$s表示從第n行到最後一行

  1,$s表示從第一行到最後一行,也可用%s來表示

  s的話就表示當前行

3.2 /{目標}/{替換成}

  簡單來說就是想要把{目標}替換成{替換成},數入想要的內容即可

3.3 {替換標誌}

  c 每次替換前詢問

  e 不顯示錯誤資訊

  g 替換一行中所有的匹配項(此選項通常需要使用)

  i 不區分大小寫

4.常用配置

vim的配置檔案叫vimrc

linux下通常位置etc/vim目錄下,修改此配置檔案需要root許可權,如果沒有特殊需要的話,不要那麼做。使用者可以在自己的主目錄下新建一個名為“.vimrc”的檔案,然後把配置資訊寫在裡面。

windows電腦下如果安裝也會在目錄中有一個vimrc檔案。如果有一些個性化的配置,可以在此檔案更改

比如說自動縮排:set autoindent

5.常用命令表