Linux中vim編輯器的使用

 一、vim簡介

  vim是vi的增強版,是一個模式化的編輯器,功能非常的強大。通常,vim共分爲3中模式,分別是編輯模式、輸入模式、和末行模式
  編輯模式:是vim的默認模式,通過vim打開文件一開始就是編輯模式,可進行刪除,複製等操作
  輸入模式:又叫插入模式,在該模式下輸入的內容都會當做文本內容來使用
  末行模式:即在整個屏幕的最下方,在裏面可以鍵入命令實現一些在編輯模式下無法實現的特性和功能,比如查找替換,行標顯示等

  用vim打開文件的格式爲:vim [options] /path/to/somefile 
  說明這裏的路徑可以省略,等文件內容寫完在決定保存的路徑也是可以的


 二、模式轉換

  編輯模式-——>輸入模式:
  i:insert,實現在當前光標所在處轉換爲輸入模式
  a:append,實現在當前光標所在處字符後面轉換爲輸入模式
  o:實現在當前光標所在行的下方新建一個空白行並轉換爲輸入模式
  I:在當前光標所在行的行首轉爲輸入模式
  A:在當前光標所在行的行尾轉爲輸入模式
  O:在當前光標所在行的上方新建一行,並轉換爲輸入模式

  輸入模式——>編輯模式轉換
   按下Esc鍵
  編輯模式——>末行模式
   鍵入“:”
  末行模式——>編輯模式
  一般要按兩次Esc,Esc
  說明:輸入模式到末行模式是無法直接實現的,只能先轉換爲編輯模式,然後在轉換爲末行模式


 三、光標跳轉

  字符間跳轉:


  h:向左
  l:向右
  j:向下
  k:向上
  在他們之前加上數字就可以實現向某個方向移動多少位,如:5h就表示向左側跳5個字符,這些操作都是在編輯模式下實現的


 單詞間跳轉:

  w:跳至後一個單詞的詞首
  e:跳至當前或下一個單詞詞尾
  b:跳至當前或者前一個單詞的詞首
 句子間跳轉:
  ):跳至下一句
  (:跳至前一句
 段落間跳轉:
  }:跳至後一段
  {:跳至前一段
 行間跳轉:
  1G:跳到第一行
  G:跳到最後一行
  #G:跳到某一行


 行內跳轉:

  ^:跳到行首,跳到行首第一個非空白字符
  $:跳到行尾,絕對行尾
  0:跳到行首,絕對行首

四、文件處理

 

 關閉文件:
  在末行模式下進行
  :w 保存
  :q 退出
  :! 強制
  :wq 保存退出
  :q! 強制退出不保存
  :x 保存並退出
  :qall全部退出
  :w!強制保存
  :wall所有的都保存
  :wqall所有的保存退出
 在編輯模式下:
  ZZ:保存退出

 打開文件:
  vim [options] /path/to/file
  vim +# /path/to/file 打開文件光標直接定位到#行
  vim + /path/to/file 只有一個“+”號,打開文件光標直接定位到最後一行

 打開多個文件:
 格式:vim 文件1 文件2 文件3...
 多文件間跳轉在末行模式下進行:
  :next下一個
  :last最後一個
  :first第一個
  :prev 前一個
 下面選項可實現多文件分割窗口格式爲:vim [Option] 文件1 文件2 文件3...
  -O:垂直分割窗口
  -o:水平分割窗口
  文件間切換敲擊ctrl+w然後按上下左右箭頭


 編輯命令:
  x:刪除單個字符
  #x:刪除光標所在處向右幾個字符
  刪除命令d;
  dw:刪除當前光標到單詞尾的所有字符
  db:刪除當前光標之前的單詞
  de:刪除光標之後的單詞
  d^:刪除光標到行首的所有字符
  d$:刪除光標到行尾的所有字符
  dd:刪除光標所在行
  #dd;刪除光標所在行及向下#行

 在末行模式下使用d命令
  末行模式支持地址定界:
  用法: 起始地址,結束地址
    $:最後一行
    .:當前光標所在行
    %:全文
   1,7d:第一行到第七行刪除
   %:表示全文
   1,$:也表示全文
   1,+6:第一行在向下數6行
   1,$-2:第一行到倒數第三行
   .,+3:當前行在向下3行

 編輯操作可撤銷:
  u:默認會保存最近50次的操作,u命令可逐一撤銷此前編輯的操作
  撤銷此前的撤銷:ctrl+r

 粘貼操作:
  p:
  刪除的是整行:
   p:在當前光標所在行的下方粘貼
   P;大寫P,在當前光標所在行的上方粘貼
  刪除的不是整行;
   p:在當前光標所在處字符的後面粘貼
   P:大寫P,在當前光標所在處字符的前面粘貼
 複製:用y鍵
  yy:複製一行
  #yy:複製#行
  y$:複製光標到行尾
  y^:複製光標到行首
  複製的是整行:
   p:在當前光標所在行的下方粘貼
   P;大寫P,在當前光標所在行的上方粘貼
  複製的不是整行;
   p:在當前光標所在處字符的後面粘貼
   P:大寫P,在當前光標所在處字符的前面粘貼
  通過vimtutor命令可以幫助學習vim 

 翻屏:
  ctrl+f;向文件尾部翻一屏
  ctrl+b:向文件首部翻一屏

  ctrl+d:向文件尾部翻半屏
  ctrl+u:向文件首部翻半屏

 文本搜索:
  /keyword:從當前光標所在處向文件尾部查找
  ?keyword:從當前光標所在處向文件首部查找
  n:下一個,跟查找命令相同的方向
  N:前一個,跟查找命令相反的方向
  說明:文本搜索支持模式匹配,也即支持正則表達式的匹配
  例如:字母d中間有兩個字母后跟n的單詞/\<d[[:alpha:]]\{2\}n\>

 編輯命令
    cc:刪除當前光標所在行並轉化爲輸入模式
    #cc:刪除當前光標所在行向下#行並轉化爲輸入模式
    c$:刪除當前光標所在處到行尾並轉化爲輸入模式
    c^:刪除當前光標所處到行首並轉化爲輸入模式
    c0:刪除至行首並轉化爲輸入模式
 vim支持可視化模式
  v:選中光標劃過的字符
  V:選中光標劃過的行,整行選取
  按Esc即可返回到編輯模式


 同一文檔窗口分割:
  ctrl+w,s;水平分割
  ctrl+w,v:垂直分割
  ctrl+w,箭頭

 窗口屬性定義:
  顯示行號:
   set number,set nu
   set nonumber,set nonu
  自動縮進
   set autoindent,set ai
   set noai
  不區分字符大小寫
   set ingorecase,set ic
   set noic

  獲取幫助
   set 敲enter鍵
  顯示匹配括號
   set showmatch,set sm
   set nosm
  語法着色:
   syntax on
   syntax off

  搜索高亮顯示
   set hlsearch
   set nohlsearch


vim的配置文件
 全局 /etc/vimrc 只有管理員纔有權限修改配置,修改之後對所有用戶都有效
 個人:~/.vimrc  這個文件實際不存在自己創建即可,修改之後只對當前用戶自己有效對其他用戶無效

查找替換在末行模式下
 格式爲 :地址定界s/查找模式/替換成的內容不能使用模式/gi
 也可以 :地址定界s@查找模式@替換成的內容不能使用模式@gi
 查找模式可以使用正則表達式
     global全局替換
  ignorecase 查找時不區分大小寫
  %表示全文搜索

 

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