66/70 vim基礎(chǔ)

vim 和 emacs 一個號稱編輯器之神,一個被稱為神的編輯器。打開 vim 執(zhí)行命令:vimtutor 則可以查看官方說明教程,vimtutor是vim使用入門教程。老實說,自從接觸vim到現(xiàn)在也有好多年了,但一直沒有強迫自己使用,以及它的難定制性,讓我至今都還無法像那些大神一樣,完全脫離鼠標和IDE,本文只對 vim 最基礎(chǔ)和常用的部分進行詳細講解,不涉及定制和插件等部分內(nèi)容。

普通模式的操作: [數(shù)字] command motion,數(shù)字代表了后面實際操作執(zhí)行的次數(shù);command 是執(zhí)行命令,如:復制,粘貼,剪切等;motion 是操作符,代表了執(zhí)行命令的操作范圍就是定位命令如:i,j,k,l,G等等。

普通模式是任何模式的中繼,雖然普通模式下你只能通過一些命令進行簡單的操作,但如果你想從某個模式進入另外一個模式都必須要先進入普通模式,如:從插入模式進入可視模式,必須先按 esc 進入普通模式,然后按 v 進入可視模式。

移動

在普通模式下,可以用鍵盤實現(xiàn)光標的移動,h j k l 分別代表光標的 左 下 上 右 的移動。請按 esc 鍵(這是為了確保您處在正常模式)。

  • h 的鍵位于左邊,每次按下就會向左移動。
  • l 的鍵位于右邊,每次按下就會向右移動。
  • j 鍵看起來很象一支尖端方向朝下的箭頭。
  • k 朝上移動。
  • gg 跳到首行
  • G 跳到末行

退出

在命令模式下,在普通模式中,輸入冒號則進入命令行模式:

  • 輸入 w 則保存
  • 輸入 q 則退出該軟件
  • 輸入 wq 保存并退出
  • 輸入 q! 強制退出。

刪除

普通模式下,刪除單一字符可以使用 x 命令,如果刪除更多字符則可以使用 d 命令:d motion

motion 表示操作范圍的指令,一下內(nèi)容再次出現(xiàn)的 motion 都參見這邊的表格:

按鍵 定義
0 將光標定位到行首位置
$ 光標定位到行尾位置
b 將光標定位到光標所在單詞的起始處
e 將光標定位到光標所在單詞的結(jié)尾處
w 將光標定位到下一個單詞的起始處
gg 將光標定位到文件開頭
G 將光標定位到文件結(jié)尾

如果刪除更多字符則可以使用 c 命令:c motion,和 d 命令類似,區(qū)別是刪除后,進入插入模式。

vim 中所有的刪除都相當于剪切,并不是真正意義上的刪除,所以一旦粘貼的話往往會是你所刪除的那些內(nèi)容。

復制

普通模式下,可以使用 y 命令:y [數(shù)字] motion。復制的操作和刪除類似,學習 vim 時尤其需要注意這些共性。

vim有12個粘貼板,分別是 0、1、2、...、9、a、"、+ 用 :reg 命令可以查看各個粘貼板里的內(nèi)容。下面講一下vim的粘貼板的基礎(chǔ)知識:

  • +號粘貼板是系統(tǒng)粘貼板,用 "+y 將內(nèi)容復制到該粘貼板后可以使用 Ctrl+V 將其粘貼到其他文檔(如firefox、gedit)中,同理,要把在其他地方用 Ctrl+C 或右鍵復制的內(nèi)容復制到 vim 中,需要在正常模式下按 "+p 。
  • " 號粘貼板(臨時粘貼板)比較特殊,直接按 y 就復制到這個粘貼板中了,直接按 p 就粘貼這個粘貼板中的內(nèi)容;
  • 要將vim某個粘貼板里的內(nèi)容粘貼進來,需要退出編輯模式,在正常模式按"Np,其中N為粘貼板號,如上所述,可以按"5p將5號粘貼板里的內(nèi)容粘貼進來,也可以按"+p將系統(tǒng)全局粘貼板里的內(nèi)容粘貼進來。

粘貼

p 將最后一次剪切或者復制的內(nèi)容,粘貼到光標之后;P 將最后一次剪切或者復制的內(nèi)容,粘貼到光標之前。

撤銷

普通模式下,u 表示撤銷最后一次修改,U 撤銷整行的修改,ctrl+r 恢復撤銷的內(nèi)容。

插入

在普通模式下進入插入模式,可以使用以下指令:

  • i:光標前插入
  • I :行首插入
  • a:光標后插入
  • A:行尾插入

可視

出了插入,普通,命令模式外,還有可視模式,通過 v 和 V 進入該模式。

跳轉(zhuǎn)

跳轉(zhuǎn)到指定行:

  • 普通模式下輸入:行號+G
  • 進入命令行模式::行號

搜索

查找光標所指向的單詞,直接 shift+* 即可高亮。

輸入/內(nèi)容,則會匹配所有相關(guān)內(nèi)容,按 n 搜索下一個匹配, 按 N 搜索上一個匹配。

搜索諸如:. * [ ] ^ % / ? ~ $ 等,需要在前面加上 \ 轉(zhuǎn)義字符。

取消搜索的高亮,則可以輸入:nohl(nohighlight的縮寫)。

替換

  • :s/原內(nèi)容/替換 : 光標后找到第一匹配內(nèi)容并替換
  • :%s/原內(nèi)容/替換 : 請示替換內(nèi)容
  • :1,10s/原內(nèi)容/替換/g : 1-10 行的所有內(nèi)容進行替換

多窗口

打開 vim 時,輸入 vim -o a b c 可以并排打開三個文件,使用 ctrl + w + w 切換到下個窗口,也可以使用 ctrl + w + 方向按鍵進行切換。

參考鏈接:
http://blog.csdn.net/nkguohao/article/details/8937695

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 命令歷史 以:和/開頭的命令都有歷史紀錄,可以首先鍵入:或/然后按上下箭頭來選擇某個歷史命令。 啟動vim 在命令...
    im螞蟻閱讀 31,072評論 3 48
  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲de夢閱讀 100,810評論 9 468
  • 公司新員工學習有用到,Vim官網(wǎng)的手冊又太大而全,而網(wǎng)上各方資料要么不全面,要么不夠基礎(chǔ)。在網(wǎng)上搜集各方資料,按照...
    甲魚閱讀 163,683評論 43 685
  • 1.RxJava 操作符 just、from、defer、interval(間隔)、range(范圍)、repea...
    安簡聯(lián)通閱讀 337評論 0 0
  • 如果沒有安裝 vsftpd 設(shè)置開機啟動 設(shè)定ftp主目錄和用戶名 修改密碼 修改配置文件 對應修改 啟動ftp服...
    songkl閱讀 504評論 0 1

友情鏈接更多精彩內(nèi)容