天天看點

Linux-Vim編輯器之進階功能入門

        • 一多檔案編輯
          • 使用vim編輯多個檔案
          • 進入vim後打開新檔案
          • 恢複檔案
        • 二可視模式
        • 三視窗操作
        • 四文檔加密
        • 五在vim執行外部指令
        • 六幫助系統
        • 七功能設定
          • vim的功能設定
          • 擷取目前的設定
          • set功能的說明

一、多檔案編輯

1.使用vim編輯多個檔案
$ vim .txt .txt 
           
指令 功能
:n 編輯2.txt檔案(go beyond last file)
:n! 強制轉換,之前的檔案内容未儲存,僅僅切換到另一個檔案
:N 編輯1.txt檔案(go before first file)
:N! 強制轉換,之前的檔案内容未儲存,僅僅切換到另一個檔案
2.進入vim後打開新檔案
指令 說明
:e 3.txt 打開新檔案3.txt
:e# 回到前一個檔案
:ls 可以列出以前編輯過的文檔
:b 2.txt(或者編号) 可以直接進入檔案2.txt編輯
:bd 2.txt(或者編号) 可以删除以前編輯過的清單中的檔案項目
:e! 4.txt 新打開檔案4.txt,放棄正在編輯的檔案
:f 顯示正在編輯的檔案名
:f new.txt 改變正在編輯的檔案名字為new.txt
3.恢複檔案

如果因為斷電等原因造成文檔沒有儲存,可以采用恢複方式,

vim -r

進入文檔後,輸入

:ewcover 1.txt

來恢複

二、可視模式

指令 說明
v 進入字元選擇模式,再次按下v後取消選擇
Shift+v 進入行選擇模式i,再按一次Shift+v取消選擇
Ctrl+v 進入矩形區域選擇模式,再按一次Ctrl+v取消選擇
d 删除所選區域的内容
y 複制所選區域的内容

三、視窗操作

vim可以在一個界面裡打開多個視窗進行編輯,這些編輯視窗稱為vim的視窗。

指令 說明
:new 打開新的視窗
:sp 1.txt 打開新的橫向視窗來編輯1.txt
:vsp 2.txt 打開新的縱向視窗來編輯1.txt
Ctrl-w s 将目前視窗分割成兩個水準的視窗
Ctrl-w v 将目前視窗分割成兩個垂直的視窗
Ctrl-w q 即 :q 結束分割出來的視窗。如果在新視窗中有輸入需要使用強制符!即:q!
Ctrl-w o 打開一個視窗并且隐藏之前的所有視窗
Ctrl-w j 移至下面視窗
Ctrl-w k 移至上面視窗
Ctrl-w h 移至左邊視窗
Ctrl-w l 移至右邊視窗
Ctrl-w J 将目前視窗移至下面
Ctrl-w K 将目前視窗移至上面
Ctrl-w H 将目前視窗移至左邊
Ctrl-w L 将目前視窗移至右邊
Ctrl-w - 減小視窗的高度
Ctrl-w + 增加視窗的高度

四、文檔加密

建立加密文檔
$ vim -x file1
           

五、在vim執行外部指令

在指令行模式中輸入

!

可以執行外部的shell指令

指令 說明
:!ls 用于顯示目前目錄的内容
:!rm FILENAME 用于删除名為 FILENAME 的檔案
:w FILENAME 可将目前 VIM 中正在編輯的檔案另存為 FILENAME 檔案

六、幫助系統

普通模式下按F1打開vim自己預設的幫助文檔

指令行模式下輸入:h shiftwidth 打開名為shiftwidth的幫助檔案

指令行模式下輸入:ver 顯示版本及參數

七、功能設定

1.vim的功能設定
可以在編輯檔案的時候進行功能設定,要永久儲存配置需要修改vim配置檔案。 vim的配置檔案~/.vimrc,可以打開檔案進行修改,不過務必小心不要影響vim正常使用
           
2.擷取目前的設定
指令 說明
:set或者:se 顯示所有修改過的配置
:set all 顯示所有的設定值
:set option? 顯示option的設定值
:set nooption 取消當期設定值
3.set功能的說明
指令 說明
:set autoindent(ai) 設定自動縮進
:set autowrite(aw) 設定自動存檔,預設未打開
:set background=dark或light 設定背景風格
:set backup(bk) 設定自動備份,預設未打開
: set cindent(cin) 設定C語言風格縮進

參考資料:

[1]https://www.shiyanlou.com/courses/reports/447278

[2]https://www.shiyanlou.com/courses/2/labs/19/document

繼續閱讀