vim編譯器的使用

vi是Linux操作系統的最常用的編譯器,vim 是vi的升級版本,它不僅兼容vi的所有指令,而且還有一些新的特性在裏面。
使用vim編譯器要提前下載

sudo apt-get install vim 

如果想要知道是否安好,只需要vim file,如果出現下圖,那麼就是安好啦
在這裏插入圖片描述

vim file,file可以在編譯前建好,也可以直接vim一個新文件。
vim編譯器有三種模式,命令行模式,輸入模式,末行模式

  • 命令行模式:移動光標,刪除,複製,粘貼
  • 輸入模式:編譯
  • 末行模式:文件保存,退出,設置編譯環境,字符串查找,設置行號

(一)命令行模式常用操作
【h(或向左方向鍵)】 光標左移一個字符
【j(或向下方向鍵)】 光標下移一個字符
【k(或向上方向鍵)】 光標上移一個字符
【l(或向右方向鍵)】 光標右移一個字符

【[Ctrl] + f】 屏幕向下移動一頁(相當於Page Down鍵)
【[Ctrl] + b】 屏幕向上移動一頁(相當於Page Up鍵)

【[0]或[Home]】 光標移動到當前行的最前面
【[$]或[End]】 光標移動到當前行的末尾

顯示行數:set nu

【G】 光標移動到文件的最後一行(第一個字符處)
【nG】 n爲數字(下同),移動到當前文件中第n行
【gg】 移動到文件的第一行,相當於"1G"
【n[Enter]】 光標向下移動n行

【/word】 在文件中查找內容爲word的字符串(向下查找)
【?word】 在文件中查找內容爲word的字符串(向上查找)

【[n]】 表示重複查找動作,即查找下一個
【[N]】 反向查找下一個
【:n1,n2s/word1/word2/g】 n1、n2爲數字,在第n1行到第n2行之間查找word1字符串,並將其替換成word2
【:1,s/word1/word2/g】從第一行(第n行同理)到最後一行查找word1註冊,並將其替換成word2【:1,s/word1/word2/gc】 功能同上,只不過每次替換時都會讓用戶確認

【x,X】 x爲向後刪除一個字符,相當於[Delete],X爲向前刪除一個字符,相當於[Backspace]
【dd】 刪除光標所在的一整行
【ndd】 刪除光標所在的向下n行
【yy】 複製光標所在的那一行
【nyy】 複製光標所在的向下n行
【p,P】 p爲將已經複製的數據在光標下一行粘貼;P爲將已經複製的數據在光標上一行粘貼

【u】 撤消上一個操作
【[Ctrl] + r】 多次撤消
【.】 這是小數點鍵,重複上一個操作

(二)命令行模式切換到輸入模式的操作
1、進入輸入模式(6個命令)
【i】 從目前光標所在處插入
【I】 從目前光標所在行的第一個非空格符處開始插入
【a】 從當前光標所在的下一個字符處開始插入
【A】 從光標所在行的最後一個字符處開始插入
【o】 英文小寫字母o,在目前光標所在行的下一行處插入新的一行並開始插入
【O】 英文大寫字母O,在目前光標所在行的上一行處插入新的一行並開始插入

2、進入替換模式(2個命令)
【r】 只會替換光標所在的那一個字符一次
【R】 會一直替換光標所在字符,直到按下[ESC]鍵爲止
【[ESC]】 退出編輯模式回到一般模式

(三)輸入模式切換到命令行模式
【:w】 保存文件
【:w!】 若文件爲只讀,強制保存文件

【:q】 離開vi
【:q!】 不保存強制離開vi
【:wq】 保存後離開
【:wq!】 強制保存後離開
【:! command】 暫時離開vi到命令行下執行一個命令後的顯示結果
【:set nu】 顯示行號
【:set nonu】 取消顯示行號
【:w newfile】 另存爲

【:set fileencoding】 查看當前文件編碼格式
【:set fileencoding=utf-8】 設置當前文件編碼格式爲utf-8,也可以設置成其他編碼格式
【:set fileformat】 查看當前文件的斷行格式(dos\windows,unix或macintosh)
【:set fileformat=unix】 將當前文件的斷行格式設置爲unix格式

(四)文件恢復模式
【[O]pen Read-Only】 以只讀方式打開文件
【[E]dit anyway】 用正常方式打開文件,不會載入暫存文件內容
【[R]ecover】 加載暫存文件內容
【[D]elete it】 用正常方式打開文件並刪除暫存文件
【[Q]uit】 按下q就離開vi,不進行其他操作
【[A]bort】 與quit功能類似

(五)塊選擇(命令行模式下用)
【v,V】 v:將光標經過的地方反白選擇;V:將光標經過的行反白選擇
【[Ctrl] + v】 塊選擇,可用長方形的方式選擇文本
【y】 將反白的地方複製到剪貼板
【d】 將反白的內容刪除

(六)多文件編輯
【vim file1 file2】 同時打開兩個文件
【:n】 編輯下一個文件
【:N】 編輯上一個文件
【:files】 列出當前用vim打開的所有文件

(七)多窗口功能
【:sp [filename]】 打開一個新窗口,顯示新文件,若只輸入:sp,則兩窗口顯示同一個文件
【[Ctrl] + w + j】 光標移動到下方窗口
【[Ctrl] + w + k】 光標移動到上方窗口
【[Ctrl] + w + q】 離開當前窗口

下面舉個栗子~~

vim hello.c
i模式下,打入下面代碼

set nu //顯示行號

在這裏插入圖片描述

/word //查找單詞in,將光標定位到in

在這裏插入圖片描述

:n1,n2s/word1/word2/g    //如果想要加上y/n判斷,則爲:2,3s/n/nn/gc

在這裏插入圖片描述
多窗口功能-----這是我覺得最有用的一個地方,可以對不同文件同時操作,還是很cool的~~

vim world.c
:sp hello.c   //命令行模式下打開hello.c
使用yy複製printf語句,【[Ctrl] + w + j】鼠標移動到world.c窗口,p粘貼

在這裏插入圖片描述
還是很喜歡這個多窗口功能的,非常非常強大~~

ps
1.在使用過程中,往往需要將外部文件的內容複製到文件內部,使用vim同樣也支持,但是需要先安裝vim-gnome,它是目前支持功能最全的包。

 sudo apt-get install vim-gnome
 
 在命令模式下
 “+y表示從vim複製到系統剪切版,
 “+p表示從外部文件(系統剪切版)粘帖到vim,
 “+d表示剪切.

如果有錯誤請多多指點~

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