vim 操作命令大全分享,vim命令大全分享

來源:互聯網
上載者:User

vim 操作命令大全分享,vim命令大全分享

1. 關於Vim

vim是我最喜歡的編輯器,也是Linux下第二強大的編輯器。 雖然emacs是公認的世界第一,我認為使用emacs並沒有使用vi進行編輯來得高效。 如果是初學vi,運行一下vimtutor是個聰明的決定。 (如果你的系統內容不是中文,而你想使用中文的vimtutor,就運行vimtutor zh)

1.1 Vim的幾種模式

正常模式:可以使用快速鍵命令,或按:輸入命令列。插入模式:可以輸入文本,在正常模式下,按i、a、o等都可以進入插入模式。可視模式:正常模式下按v可以進入可視模式, 在可視模式下,移動游標可以選擇文本。按V進入可視行模式, 總是整行整行的選中。ctrl+v進入可視塊模式。替換模式:正常模式下,按R進入。

2. 啟動Vim

vim -c cmd file: 在開啟檔案前,先執行指定的命令;vim -r file: 恢複上次異常退出的檔案;vim -R file: 以唯讀方式開啟檔案,但可以強制儲存;vim -M file: 以唯讀方式開啟檔案,不可以強制儲存;vim -y num file: 將編輯視窗的大小設為num行;vim + file: 從檔案的末尾開始;vim +num file: 從第num行開始;vim +/string file: 開啟file,並將游標停留在第一個找到的string上。vim –remote file: 用已有的vim進程開啟指定的檔案。 如果你不想啟用多個vim會話,這個很有用。但要注意, 如果你用vim,會尋找名叫VIM的伺服器;如果你已經有一個gvim在運行了, 你可以用gvim –remote file在已有的gvim中開啟檔案。

3. 文檔操作

:e file –關閉當前編輯的檔案,並開啟新的檔案。 如果對當前檔案的修改未儲存,vi會警告。:e! file –放棄對當前檔案的修改,編輯新的檔案。:e+file – 開始新的檔案,並從檔案尾開始編輯。:e+n file – 開始新的檔案,並從第n行開始編輯。:enew –編譯一個未命名的新文檔。(CTRL-W n):e – 重新載入當前文檔。:e! – 重新載入當前文檔,並丟棄已做的改動。:e#或ctrl+^ – 回到剛才編輯的檔案,很實用。:f或ctrl+g – 顯示文檔名,是否修改,和游標位置。:f filename – 改變編輯的檔案名稱,這時再儲存相當於另存新檔。gf – 開啟以游標所在字串為檔案名稱的檔案。:w – 儲存修改。:n1,n2w filename – 選擇性儲存從某n1行到另n2行的內容。:wq – 儲存並退出。ZZ – 儲存並退出。:x – 儲存並退出。:q[uit] ——退出當前視窗。(CTRL-W q或CTRL-W CTRL-Q):saveas newfilename – 另存新檔:browse e – 會開啟一個檔案瀏覽器讓你選擇要編輯的檔案。 如果是終端中,則會開啟netrw的檔案瀏覽視窗; 如果是gvim,則會開啟一個圖形介面的瀏覽視窗。 實際上:browse後可以跟任何編輯文檔的命令,如sp等。 用browse開啟的起始目錄可以由browsedir來設定: :set browsedir=last – 用上次訪問過的目錄(預設);:set browsedir=buffer – 用當前檔案所在目錄;:set browsedir=current – 用當前工作目錄; :Sex – 水平分割一個視窗,瀏覽檔案系統;:Vex – 垂直分割一個視窗,瀏覽檔案系統;

4. 游標的移動

4.1 基本移動

以下移動都是在normal模式下。

h或退格: 左移一個字元;l或空格: 右移一個字元;j: 下移一行;k: 上移一行;gj: 移動到一段內的下一行;gk: 移動到一段內的上一行;+或Enter: 把游標移至下一行第一個非空白字元。-: 把游標移至上一行第一個非空白字元。w: 前移一個單詞,游標停在下一個單詞開頭;W: 移動下一個單詞開頭,但忽略一些標點;e: 前移一個單詞,游標停在下一個單詞末尾;E: 移動到下一個單詞末尾,如果詞尾有標點,則移動到標點;b: 後移一個單詞,游標停在上一個單詞開頭;B: 移動到上一個單詞開頭,忽略一些標點;ge: 後移一個單詞,游標停在上一個單詞末尾;gE: 同 ge ,不過‘單詞’包含單詞相鄰的標點。(: 前移1句。): 後移1句。{: 前移1段。}: 後移1段。fc: 把游標移到同一行的下一個c字元處Fc: 把游標移到同一行的上一個c字元處tc: 把游標移到同一行的下一個c字元前Tc: 把游標移到同一行的上一個c字元後;: 配合f & t使用,重複一次,: 配合f & t使用,反向重複一次

上面的操作都可以配合n使用,比如在正常模式(下面會講到)下輸入3h, 則游標向左移動3個字元。

0: 移動到行首。g0: 移到游標所在螢幕行行首。^: 移動到本行第一個非空白字元。g^: 同 ^ ,但是移動到當前螢幕行第一個非Null 字元處。:移動到行尾。g” role=”presentation” style=”position: relative;”>:移動到行尾。g:移動到行尾。g: 移動游標所在螢幕行行尾。n|: 把游標移到遞n列上。nG: 到檔案第n行。:n 移動到第n行。:$ 移動到最後一行。H: 把游標移到螢幕最頂端一行。M: 把游標移到螢幕中間一行。L: 把游標移到螢幕最底端一行。gg: 到檔案頭部。G: 到檔案尾部。

4.2 翻屏

ctrl+f: 下翻一屏。ctrl+b: 上翻一屏。ctrl+d: 下翻半屏。ctrl+u: 上翻半屏。ctrl+e: 向下滾動一行。ctrl+y: 向上滾動一行。n%: 到檔案n%的位置。zz: 將當前行移動到螢幕中央。zt: 將當前行移動到螢幕頂端。zb: 將當前行移動到螢幕底端。

4.3 標記

使用標記可以快速移動。到達標記後,可以用Ctrl+o返回原來的位置。 Ctrl+o和Ctrl+i 很像瀏覽器上的 後退 和 前進 。

m{a-z}: 標記游標所在位置,局部標記,只用於當前檔案。m{A-Z}: 標記游標所在位置,全域標記。標記之後,退出Vim, 重新啟動,標記仍然有效。`{a-z}: 移動到標記位置。‘{a-z}: 移動到標記行的行首。`{0-9}:回到上[2-10]次關閉vim時最後離開的位置。“: 移動到上次編輯的位置。”也可以,不過“精確到列,而”精確到行 。如果想跳轉到更老的位置,可以按C-o,跳轉到更新的位置用C-i。`”: 移動到上次離開的地方。`.: 移動到最後改動的地方。:marks 顯示所有標記。:delmarks a b – 刪除標記a和b。:delmarks a-c – 刪除標記a、b和c。:delmarks a c-f – 刪除標記a、c、d、e、f。:delmarks! – 刪除當前緩衝區的所有標記。:help mark-motions 查看

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.