VIM的配置和使用方法

VIM簡介

vim是一款相似於vi的功能強大的文本編輯器且對比於傳統的vi編輯器獲得了很大的功能上的提高,在類Unix系統中獲得了普遍的使用。經過簡單的配置,就能夠完成強大的學習。php

若是你的操做系統(類Unix系統)上沒有vim編輯器,請先安裝它!,以ubuntu操做系統爲例:shell

  • 安裝vimubuntu

    sudo aptitude install -y vim

VIM的基本使用

  • 使用vim打開文件vim

    1. 使用vim打開一個文件編輯器

      sudo vim /etc/passwd
    2. 精肯定位到要編輯文件的行數學習

      sudo vim +18 /etc/passwd
    3. 使用vim一次性打開多個文件編碼

      sudo vim -O /etc/passwd /etc/group

      這樣vim能夠打開兩個文件,光標默認在最左邊的窗口中,能夠直接編輯裏面的內容。使用Ctrl + W 能夠切換到另一個窗口(切換以前須要保存寫入的內容)。spa

  • 配置vim(可在vim配置文件vimrc中寫入)操作系統

    • 顯示行號.net

      : set nu
    • 自動縮進

      : set ai
    • 語法高亮顯示

      : syntax on
  • VIM 中執行SHELL命令

    :! gcc -o hello hello.c
  • 定義快捷鍵

    進入vim配置文件

    sudo vim /etc/vim/vimrc

    在vimrc文件中編輯配置

    noremap <F6> :set nu
    noremap <F7> :set ai
    noremap <F8> :syntax on
  • 高效配置

    filetype on                  # 啓用文件類型偵測
    set encoding=cp936           # 指定當前字符編碼爲 Windows 簡體中文
    set tabstop=4                # 設置 Tab 鍵爲4個空格
    set mouse=a                  # 在終端中使用鼠標
    set ignorecase               # 查找時忽略大小寫
    set helplang=cn              # 在安裝完中文幫助文檔後設置幫助文檔的語言
    help user                    # 查閱中文手冊
    help user_num(範圍:01-32)    # num能夠直接定位到章節
    help tag                     # tag爲手冊名稱

我的使用的vim配置

: set nu
: set ai
: syntax on
: filetype on
set tabstop=4
set mouse=a
set ignorecase

vi工做模式

vi有三種基本工做模式:命令模式、文本輸入模式、末行模式。

12192974-85087c189fa9b9e0.png

vi 工做模式

2.1 命令模式

任什麼時候候,無論用戶處於何種模式,只要按一下ESC鍵,便可使Vi進入命令模式;咱們在shell環境(提示符爲$)下輸入啓動Vi命令,進入編輯器時,也是處於該模式下。在該模式下,用戶能夠輸入各類合法的Vi命令,用於管理本身的文檔。此時從鍵盤上輸入的任何字符都被當作編輯命令來解釋,若輸入的字符是合法的Vi命令,則Vi在接受用戶命令以後完成相應的動做。但需注意的是,所輸入的命令並不在屏幕上顯示出來。若輸入的字符不是Vi的合法命令,Vi會響鈴報警。

2.2 編輯模式

在命令模式下輸入插入命令i(當前位置插入)、a(當前位置後一位置插入) 、o(下一行插入)能夠進入文本輸入模式。在該模式下,用戶輸入的任何字符都被vi當作文件內容保存起來,並將其顯示在屏幕上。在文本輸入過程當中,若想回到命令模式下,按鍵ESC便可。

2.3 末行模式

在命令模式下,用戶按「:」鍵便可進入末行模式下,此時Vi會在顯示窗口的最後一行(一般也是屏幕的最後一行)顯示一個「:」做爲末行模式的提示符,等待用戶輸入命令。多數文件管理命令都是在此模式下執行的(如把編輯緩衝區的內容寫到文件中等)。末行命令執行完後,Vi自動回到命令模式。 若是要從命令模式轉換到編輯模式,能夠鍵入命令a或者i;若是須要從文本模式返回,則按Esc鍵便可。在命令模式下輸入「:」便可切換到末行模式,而後輸入命令。

3. vi基本操做

3.1進入編輯模式

命令 含義
i和I i在光標前插入,I在行首插入
a和A a在光標後插入,A在行末插入
o和O o在光標所在行下一行插入,O在光標所在行上一行插入

3.2 移動光標

命令 含義
h 光標向左移動
j 光標向下移動
k 光標向上移動
l 光標向右移動
H、M、L 光標移動到到可見屏幕第一行(H)、中間行(M)、最後一行(L)
^和$ ^移動到行首,$移動到行末
G和gg G文檔最後一行,gg文檔第一行
ctrl+f、ctrl+b 向前翻屏、向後翻屏
ctrl+d、ctrl+u 向前半屛、向後半屛
{ 和 } {向上移動一段,}向後移動一段
w和b 向前移動一個單詞,向後移動一個單詞

3.3 刪除命令

命令 含義
X和x x刪除光標後一個字符,X刪除光標前一個字符,包含光標位置字符
dd和 n dd dd刪除所在行,5 dd刪除指定行數
d0和D d0刪除光標前本行全部內容,D刪除光標後本行全部內容,包含光標位置字符
dw 刪除光標所在位置的字,包含光表所在位置字符

3.4 撤銷命令

命令 含義
u 一步一步撤銷
ctrl + r 反撤銷

3.5 重複命令

命令 含義
. 重複執行上一次操做的命令

3.6 複製粘貼

命令 含義
yy 和 n yy 和y$ y^ yy複製當前行,5 yy複製5行
p 在光標所在位置向下新開一行粘貼

3.7 選擇文本

命令 含義
v 和 V v選擇單個字符,V選擇整行
<<和>> 選擇文本以後,向左縮進,向右縮進

3.8 查找替換

命令 含義
命令模式下,r和R r替換當前字符,R替換光標後的字符
末行模式下,/ + str n查找下一個,N查找前一個
末行模式下,%s/abc/123/g 將文件中全部abc替換爲123
末行模式下,1, 10s/abc/123/g 將第一行至第10行之間的abc替換成123

VIM 編輯器進階

  1. 隨時可查閱的 VIM 手冊

    http://soruceforge.net/projects/vimdoc/files/vimcdoc/vimcdoc-1.9.0.tar.gz/download
  2. 使用vim插件

    vim插件官網:https://www.vim.org/scripts/script.php?script_id=273

    插件通常安裝步驟(以TagList插件爲例):

    • 解壓縮包

      sudo unzip taglist_46.zip
    • 將xxx.vim複製到/etc/vim/plugin目錄下

      cd plugin
      sudo cp -rf taglist.vim /etc/vim/plugin
    • 重啓VIM後輸入以下命令

      :Tlist
相關文章
相關標籤/搜索