Recca Chao 的 gitHub page

推廣網站開發,包含 Laravel 和 Kotlin 後端撰寫、自動化測試、讀書心得等。Taiwan Kotlin User Group 管理員。

View on GitHub

簡短版本的說明,列舉一些 vim 常用的按鍵

來源:https://www.maketecheasier.com/vim-keyboard-shortcuts-cheatsheet/

移動

基礎移動

| 按鍵 | 功能 | -- | -- | h | 左移 | j | 下移 | k | 上移 | l | 右移 | 0 | 移動到行首 | $ | 移動到行尾 | ^ | 移動到該行第一個非空白字元 | w | 往後移動一個字(依據單字判斷) | W | 往後移動一個字(依據空白判斷) | 5w | 往後移動五個字(依據單字判斷) | b | 往前移動一個字(依據單字判斷) | B | 往前移動一個字(依據空白判斷) | 5b | 往前移動五個字(依據單字判斷) | G | 移動到檔案最末端 | gg | 移動到檔案最前端

進階移動

| 按鍵 | 功能 | -- | -- | ( | 移動到前一句 | ) | 移動到下一句 | { | 移動到前一段落 | } | 移動到下一段落 | [[ | 移動到前一區塊 | ]] | 移動到後一區塊 | [] | 移動到前一區塊結尾 | ][ | 移動到下一區塊結尾

書籤

| 按鍵 | 功能 | -- | -- | m {a-z A-Z} | 標記書籤({a-z A-Z}) | :marks | 列出所有書籤 | `{a-z A-Z} | 移動到書籤({a-z A-Z})位置

輸入

基礎輸入

| 按鍵 | 功能 | -- | -- | a | 在游標後進入編輯模式 | A | 在行尾進入編輯模式 | i | 在游標前進入編輯模式 | o | 在游標下加入新行,進入編輯模式 | O | 在游標上加入新行,進入編輯模式

進階輸入

| 按鍵 | 功能 | -- | -- | :r [filename] | 在游標下輸入 filename 檔案 | :r ![command] | 執行 command 命令後,將輸出寫入游標之後

刪除

| 按鍵 | 功能 | -- | -- | x | 刪除游標所在位置字母 | dw | 刪除游標所在位置單字 | d0 | 刪除游標到行首之間文字 | d$ | 刪除游標到行末之間文字 | d) | 刪除游標到句末之間文字 | dgg | 刪除游標到檔案開頭之間文字 | dG | 刪除游標到檔案結尾之間文字 | dd | 刪除游標所在整行 | 3dd | 刪除游標所在以下三行

剪貼

| 按鍵 | 功能 | -- | -- | yy | 複製游標所在整行 | ["x]yy | 複製游標所在整行至紀錄 x | p | 在游標下方貼上整行 | P | 在游標上方貼上整行 | ["x]p | 在游標下方貼上紀錄 x 內容 | ["x]P | 在游標上方貼上紀錄 x 內容

復原/重做

| 按鍵 | 功能 | -- | -- | u | 復原 | ctrl + r | 重做

搜尋/取代

基礎取代

| 按鍵 | 功能 | -- | -- | r{text} | 將游標下方的文字取代成 {text} | R | 進去取代模式,輸入的文字會直接取代原本文字。

搜尋和取代

| 按鍵 | 功能 | -- | -- | /search_text | | ?search_text | | n | | N | | :%s/[original]/[replacement] | | :%s/[original]/[replacement]/g | | :%s/[original]/[replacement]/gc |

選取

基礎選取

| 按鍵 | 功能 | -- | -- | v | 進入以字母為單位的選取模式 | V | 進入以行為單位的選取模式 | Esc | 離開選取模式

修改選取

| 按鍵 | 功能 | -- | -- | ~ | Switch case | d | 刪除單字 | c | 修改 | y | 複製(yank) | > | 右移 | < | 左移 | ! | filter through an external command

儲存與離開

| 按鍵 | 功能 | -- | -- | :q | 檔案沒有修改時離開檔案 | :w | 存擋 | :w filename | 以 filename 的檔名存擋 | :wq | 存檔後離開檔案 | :q! | 不存檔強制離開 | ZZ | 同 :wq | ZQ | 同 :q!