新聞中心
Vim(Vi[Improved])編輯器是功能強大的跨平臺文本文件編輯工具,繼承自Unix系統(tǒng)的Vi編輯器,支持Linux/Mac OS X/Windows系統(tǒng),利用它可以建立、修改文本文件,本篇文章為大家講解一下vim的基本使用方法。

目前創(chuàng)新互聯(lián)已為上千多家的企業(yè)提供了網站建設、域名、網站空間、網站托管、服務器租用、企業(yè)網站設計、喀什網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
一、vi、vim介紹
(1)基于圖形界面,如gedit、geany等; (2)基于命令行,如nano、vi、joe等;
每個命令行界面的文本編輯器都有各自不同的快捷鍵,比如nano的保存為CTRL+W,vim的保存為:w;
基于命令行的文本編輯器是必要的,Linux的tty1~tty6都是命令行界面,是打不開圖形界面的文本編輯器的;
vi是每個Linux Distribution都默認安裝的文本編輯器,并且很多軟件的默認編輯器都是vi,因此學習vi是很必要的;
vim是vi的高級版本,vi是文本編輯器,而vim應該說是程序編輯器,因為能夠像一般的IDE一樣,根據文件名載入不同的語法高亮,即顏色區(qū)分,比如java文件會遵循java的語法高亮;
下面我們就編寫一個”hello world”的java程序來看看vim的語法高亮; 可以看出vim有很好的語法檢查功能,因為關鍵字都使用了不同的顏色標出; vi有三種模式:
(1)一般模式:進入vi的默認模式,能夠進行復制、黏貼、刪除等操作;
(2)編輯模式:從一般模式按下‘i’即可進入;
(3)命令行模式:從一般模式按下“:”、'?'、'/'即可進入;
注意:如果安裝了vim后,輸入vi后也是使用vim編輯器,我們輸入alias后看到“alias vi=’vim’”;
二、vi/vim按鍵
“一般模式”的常用按鍵:
| “一般模式”的常用按鍵 | 按鍵含義 |
|---|---|
| h | 向左 |
| J | 向下 |
| K | 向上 |
| l | 向右 |
| 20h | 向左20個字符 |
| 20j | 向下20行 |
| 20k | 向上20行 |
| 20l | 向右20個字符 |
| Page Up | 向上翻頁 |
| Page Down | 向下翻頁 |
| Home | 光標移到當前行的最左端 |
| End | 光標移到當前航的最右端 |
| n [空格] | 光標向右移動n個字符 |
| N[Enter] | 光標向下N行 |
| G | 光標移到最后一行 |
| nG | 光標移動到第n行 |
| gg或1G | 光標移動到第一行 |
| /word | 向下查找word |
| ?word | 向上查找word |
| n | 如果是/word后使用,則表示向下繼續(xù)查找; 如果是?word后使用,則表示向上繼續(xù)查找; |
| N | 如果是/word后使用,則表示向上繼續(xù)查找; 如果是?word后使用,則表示向下繼續(xù)查找; |
| :n,m/old/new/g | 從第n行到第m行中,將old替換為new |
| :n,$s/old/new/g | 從第n行到最后一行中,將old替換為new |
| u | 類似windows中的CTRL+Z,前一步 |
| x | 向后刪除一個字符 |
| X | 向前刪除一個字符 |
| 3x | 向后刪除3個字符 |
| 3X | 向前刪除3個字符 |
| dd | 刪除當前行 |
| 3dd | 刪除當前行開始的3行 |
| yy | 復制當前行 |
| 3yy | 復制當前行開始的3行 |
| p | 黏貼到當前光標的下一行 |
| P | 黏貼到當前光標的上一行 |
| CTRL+r | 重做前一個操作 |
顯示詳細信息
“命令行模式”的常用按鍵:
| “命令行模式”的常用按鍵 | 按鍵含義 |
|---|---|
| :w | 保存 |
| :q | 退出vim |
| :wq | 保存并退出 |
| :wq! | (在可以轉換權限的情況下)強制保存并退出 |
| :q! | 直接退出不保存 |
| :w filename | 另存為filename |
| :n,m w filename | 將第n行到第m行另存為filename |
| :set nu | 顯示行號 |
| :set nonu | 不顯示行號 |
| :! command | 暫時離開vim,并執(zhí)行command,執(zhí)行完后再進入vim |
| :r filename | 將filename文件的數據讀入當前文件 |
| :set all | 顯示當前vim的環(huán)境配置 |
顯示詳細信息
三、vim的恢復機制
vim正在編輯某個文件時都會同時存在.file.swp,此文件用來暫存,幫助恢復文件內容,當vim正常關閉此文件時,.filename.swp文件會消失。 我們看到圖中說明了出現(xiàn)此界面的兩個原因:
(1)多人同時編輯此文件:因為Linux是多用戶的操作系統(tǒng),因此可能兩個人同時登陸并編輯此文件,如果A進入系統(tǒng)開始編輯1.txt文件,則會出現(xiàn).1.txt.swp,當A還沒編輯完但B也想進去編輯時,因為此文件的目錄中存在.1.txt.swp,則就會出現(xiàn)上圖的界面;
(2)非正常關閉文件;
圖中最后一行說明了我們此時可以采取的幾個動作:
(1)o:以只讀方式打開;
(2)R:恢復,即從swp文件中恢復,但是swp文件不會隨著vim關閉而刪除,需要手動刪除;
(3)d:刪除swp文件;
(4)q:退出vim;
四、vim記錄及默認配置文件
/etc/vimrc文件為全局vim配置文件。
1.如果我們用xiazdong賬戶使用vim后,在/home/xiazdong就會出現(xiàn).viminfo文件,此文件用來作為vim的日志,記錄用戶使用vim打開了什么文件,做了什么操作;
2.如果xiazdong賬戶想要配置vim的默認環(huán)境,則可以在/home/xiazdong創(chuàng)建.vimrc,并且配置一些特征,比如顯示行號,語法檢查等;
一般使用如下配置:
set hlsearch
set backspace=2
set autoindent
set nu
set ruler
set showmode
set bg=dark
syntax on
五、Visual Block功能
Visual Block功能可以用于塊復制。
(1)CTRL+v:開始復制塊;
(3)y:復制塊;
(4)p:黏貼塊;
(5)d:刪除塊
VIM的使用方法VIM的使用方法
六、同時編輯多個文件
多文件編輯的好處是能夠將一個文件的某些內容yy后,p到另一個文件中。 vim file1 file2 即可同時編輯兩個文件,但是屏幕中同時只會出現(xiàn)一個文件內容,需要進行切換。
(1):n:向下切換;
(2):N:向上切換;
(3):files:列出當前編輯的所有文件;
七、多窗口編輯
如下圖:一個界面能夠顯示多個文件內容。
(1):sp:打開當前文件;
(2):sp filename:打開filename文件;
(3)CTRL+w+↓:光標切換到下一個窗口;
(4)CTRL+w+↑:光標切換到上一個窗口;
(5):q:關閉光標所在的窗口;
八、編碼問題
可能會出現(xiàn)亂碼問題,解決方法:保持終端的字符編碼與文件的字符編碼一致!tty1~tty6不支持顯示中文,因此在tty1~tty6中顯示中文必出現(xiàn)亂碼,設置終端的字符編碼。
編碼轉換命令:iconv
iconv -f文件的原本編碼-t文件的新編碼filename -o newfilename
比如有一個big5編碼的文件:1.big5,要轉換成utf8的文件:2.utf8,則iconv -f big5 -t utf8 1.big5 -o 2.utf8
名稱欄目:詳解vim的基本使用方法
本文來源:http://m.5511xx.com/article/cocsidp.html


咨詢
建站咨詢
