Vim 編輯器 初學(1)

來源:互聯網
上載者:User

標籤:vim 編輯器

一、vim模式介紹

以下介紹內容來自維基百科Vim

從vi演生出來的Vim具有多種模式,這種獨特的設計容易使初學者產生混淆。幾乎所有的編輯器都會有插入和執行命令兩種模式,並且大多數的編輯器使用了與Vim截然不同的方式:命令目錄(滑鼠或者鍵盤驅動),按鍵組合(通常通過control鍵(CTRL)和alt鍵(ALT)組成)或者滑鼠輸入。Vim和vi一樣,僅僅通過鍵盤來在這些模式之中切換。這就使得Vim可以不用進行菜單或者滑鼠操作,並且最小化按鍵組合的操作。對文字錄入員或者程式員可以大大增強速度和效率。

Vim具有6種基本模式和5種派生模式,我們這裡只簡單介紹下6種基本模式:

  • 普通模式(Normal mode)

在普通模式中,用的編輯器命令,比如移動游標,刪除文本等等。這也是Vim啟動後的預設模式。這正好和許多新使用者期待的操作方式相反(大多數編輯器預設模式為插入模式)。

Vim強大的編輯能來自於其普通模式命令。普通模式命令往往需要一個操作符結尾。例如普通模式命令dd刪除當前行,但是第一個"d"的後面可以跟另外的移動命令來代替第二個d,比如用移動到下一行的"j"鍵就可以刪除當前行和下一行。另外還可以指定命令重複次數,2dd(重複dd兩次),和dj的效果是一樣的。使用者學習了各種各樣的文本間移動/跳轉的命令和其他的普通模式的編輯命令,並且能夠靈活組合使用的話,能夠比那些沒有模式的編輯器更加高效的進行文本編輯。

在普通模式中,有很多方法可以進入插入模式。比較普通的方式是按a(append/追加)鍵或者i(insert/插入)鍵。

  • 插入模式(Insert mode)

在這個模式中,大多數按鍵都會向文本緩衝中插入文本。大多數新使用者希望文字編輯器編輯過程中一直保持這個模式。

在插入模式中,可以按ESC鍵回到普通模式。

  • 可視模式(Visual mode)

這個模式與普通模式比較相似。但是移動命令會擴大高亮的文本地區。高亮地區可以是字元、行或者是一塊文本。當執行一個非移動命令時,命令會被執行到這塊高亮的地區上。Vim的"文字物件"也能和移動命令一樣用在這個模式中。

  • 選擇模式(Select mode)

這個模式和無模式編輯器的行為比較相似(Windows標準文本控制項的方式)。這個模式中,可以用滑鼠或者游標鍵高亮選擇文本,不過輸入任何字元的話,Vim會用這個字元替換選擇的高亮文字區塊,並且自動進入插入模式。

  • 命令列模式(Command line mode)

在命令列模式中可以輸入會被解釋成並執行的文本。例如執行命令(:鍵),搜尋(/?鍵)或者過濾命令(!鍵)。在命令執行之後,Vim返回到命令列模式之前的模式,通常是普通模式。

  • Ex模式(Ex mode)

這和命令列模式比較相似,在使用:visual命令離開Ex模式前,可以一次執行多條命令。

這其中我們常用到就是普通模式、插入模式和命令列模式,本課程也只涉及這三個常用模式的內容

2.三種常用模式的切換

vim啟動進入普通模式,處於插入模式或命令列模式時只需要按Esc或者Ctrl+[(這在vim課程環境中不管用)即可進入普通模式。普通模式中按i(插入)或a(附加)鍵都可以進入插入模式,普通模式中按:進入命令列模式。命令列模式中輸入wq斷行符號後儲存並退出vim。


二、進入vim1.使用vim命令進入vim介面

vim後面加上你要開啟的已存在的檔案名稱或者不存在(則作為建立檔案)的檔案名稱。開啟Xfce終端,輸入以下命令

$ vim practice_1.txt

直接使用vim也可以開啟vim編輯器,但是不會開啟任何檔案。

$ vim

進入命令列模式後輸入:e 檔案路徑 同樣可以開啟相應檔案。

2.遊標移動

在進入vim後,按下i鍵進入插入模式。在該模式下您可以輸入文本資訊,下面請輸入如下三行資訊:

12345678abcdefghijkshiyanlou.com

Esc進入普通模式,在該模式下使用方向鍵或者h,j,k,l鍵可以移動遊標。

按鍵 說明
h
l 右(小寫L)
j
k
w 移動到下一個單詞
b 移動到上一個單詞

請嘗試在普通模式下使用方向鍵移動游標到shiyanlou這幾個字母上面。

三、進入插入模式1.進入插入模式

在普通模式下使用下面的鍵將進入插入模式,並可以從相應的位置開始輸入

命令 說明
i 在當前游標處進行編輯
I 在行首插入
A 在行末插入
a 在游標後插入編輯
o 在當前行後插入一個新行
O 在當前行前插入一個新行
cw 替換從游標所在位置後到一個單詞結尾的字元

請嘗試不同的從普通模式進入插入模式的方法,在最後一行shiyanlou前面加上www.注意每次要先回到普通模式才能切換成以不同的方式進入插入模式

四、儲存文檔1.命令列模式下儲存文檔

從普通模式輸入:進入命令列模式,輸入w斷行符號,儲存文檔。輸入:w 檔案名稱可以將文檔另存新檔其他檔案名稱或存到其它路徑下

五、退出vim1.命令列模式下退出vim

從普通模式輸入:進入命令列模式,輸入wq斷行符號,儲存並退出編輯

以下為其它幾種退出方式:

命令 說明
:q! 強制退出,不儲存
:q 退出
:wq! 強制儲存並退出
:w <檔案路徑> 另存新檔
:saveas 檔案路徑 另存新檔
:x 儲存並退出
:wq 儲存並退出
2.普通模式下退出vim

普通模式下輸入Shift+zz即可儲存退出vim

六、刪除文本1.普通模式下刪除vim文本資訊

進入普通模式,使用下列命令可以進行文本快速刪除:

命令 說明
x 刪除遊標所在的字元
X 刪除遊標所在前一個字元
Delete x
dd 刪除整行
dw 刪除一個單詞(不適用中文)
d$D 刪除至行尾
d^ 刪除至行首
dG 刪除到文檔結尾處
d1G 刪至文檔首部

除此之外,你還可以在命令之前加上數字,表示一次刪除多行,如:

2dd表示一次刪除2行

我們來做如下練習:

$ cp /etc/protocols .$ vim protocols


七、總結

vim初體驗你是不是覺得很奇妙呢,或許目前你還沒有vim產生任何好感,不覺得它是一款優秀的編輯器,那隻能是因為你還沒能掌握vim的精髓,或者是你打字太慢,回去在小霸王學習機上再練練吧-_-||。這裡也可以先透露下,vim的精髓就在於命令鍵的組合,全鍵盤的操作,可以使你收不離開鍵盤輸入地區即可完成所有的操作,那可真實即高效又炫酷的體驗啊,當你掌握這項技能絕對可以秒掉其它不會用vim的程式員幾條街(起碼在氣勢上吧,當然還要除掉哪些只會Emacs的程式員,因為Emacs與Vim之間有場戰爭,感興趣的可以看這裡Emacs和Vim:神的編輯器和編輯器之神)

Vim 編輯器 初學(1)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.