天天看點

vim文字處理器

linux 下的vi 是一種文字編輯器,後來的更新版本是vim。vi 分為三種模式:一般模式、編輯模式、指令指令模式。它們之間的關系如下:

vim文字處理器

下面分類别解析指令:

vim文字處理器
vim文字處理器

                                                          ``(注意是~那個鍵) 傳回到光标剛才的位置

                    

                                                          Ctrl + f 往下翻頁(forward)

                                                          Ctrl + b 往上翻頁(backward)

                        n|            移動到本行的第n列

vim文字處理器
vim文字處理器
vim文字處理器

                                                                     補充:删除包含某一字元的所有行::g/text/d

vim文字處理器
vim文字處理器
vim文字處理器

    vim是vi的更新版本。它是完全基于vi的。但是突出兩個功能:具有顔色顯示功能和支援許多程式文法。是以一種說法是:vi是文字處理器,而vim是程式開發工具。當使用vim編輯程式(不僅是c語言)時,可以直接進行“程式調試(debug)”

一些常用指令案例:

1.删除指定的某些行

指令:(指令行指令模式)m,nd

釋義:m是從第m行開始;n是從第n行開始;d是删除操作。之後回車即可。

例子:删除m到n之間的行數

step1:(指令行指令模式):m,nd——輸入從第m行到目前位置的删除指令

step2:(指令行指令模式)回車——執行删除指令

2.複制指定的某些行

指令:(指令行指令模式):m,ny

釋義:m是從第m行開始;n是從第n行開始;y是删除操作。之後回車即可。

例子:複制m到n之間的行數

step1:(指令行指令模式):m,ny——輸入從第m行到目前位置的删除指令

step2:(指令行指令模式)回車——執行複制指令

3.選中指定的某些行

指令:(一般模式)mGVnG

釋義:mG是從第m行開始;nG是直到第n行;V是進入可視模式。之後可以進行複制(y)、删除(d)操作。

例子1:選中m到n之間的行數

step1:(一般模式):mGVnG——輸入從第m行到第n行選中

例子2:全選

step1:(一般模式):ggVG——全選選中

注釋:ctrl+v 進入列編輯模式,向下或向上移動光标,把需要注釋的行的開頭标記起來,然後按大寫的I,再插入注釋符,比如"//",再按Esc,就會全部注釋了。

删除:先按v,進入visual模式,橫向選中列的個數(如"/ /"注釋符号,需要選中兩列),再按Esc,再按ctrl+v 進入列編輯模式,向下或向上移動光标,選中注釋部分,然後按d, 就會删除注釋符号。

5. 程式設計時自動補全成員

vim的附加功能

1.塊選擇

vim文字處理器

   注:方向仍然是由hjkl(或上下左右箭頭)控制

2.多檔案切換

用vim  file1 file2 file3.......可以同時打開很多檔案。通過切換檔案可以實作多檔案之間的複制、粘貼、删除等。

vim文字處理器

3.多視窗功能

更炫的功能,同時顯示兩個視窗于一個界面上。

vim文字處理器

vim -o file1 file2 file3  水準打開多個視窗

vim -O file1 file2 file3  垂直打開多個視窗

vim -d file1 file2     垂直打開多個視窗,并且進行比較

qall           quit all,關閉所有打開的視窗,如果有一個修改了沒儲存,會提示,不會儲存

qall!                              強制關閉所有,不進行儲存

wall           所有檔案寫入

4. 大小寫轉換

gu或者gU: 小u意味着轉為小寫; 大U意味着轉為大寫

guw 光标到詞尾,大寫轉換成小寫

gUw 光标到詞尾,小寫轉換成大寫

gUG 從光标所在位置到文章最後一個字元,都變為大寫

gUgg 從光标所在位置到文章第一個字元,都變為大寫

3gU 光标所在行到往下3行都變小寫

ggguG 整篇文章大寫轉化為小寫

gggUG 整篇文章小寫轉化為大寫

常用小操作

1. 還原 u,  最新 ctr + r

2. 統計打開的文本中字元串"hello"的個數::%s/hello//gn

本文轉自jihite部落格園部落格,原文連結:http://www.cnblogs.com/kaituorensheng/archive/2013/03/19/2970160.html,如需轉載請自行聯系原作者