VS Code 中的 Vim 操作 | 無需修改 VSC 默認快捷鍵 | 常用組合與邏輯

2021-02-13 Piper蛋窩
VS Code 中的 Vim 操作 | 常用組合與邏輯

儘管 VS Code 自帶的快捷鍵已經足夠強大 ,但存在一個問題:使用方向鍵是一個有些「反人類」的行為,雙手放在鍵盤上,如果只敲擊字母,那麼便無需移動手腕;如果需要去敲擊方向鍵,則需要移動手腕或者小臂。Vim插件讓絕大部分敲擊集中在字母的區域,讓操作更加快捷、舒適。本文我將推薦我常用的Vim操作。

目錄

•Vim 插件安裝•Vim 基礎•VS Code 中常用 Vim 組合邏輯

Vim 插件安裝下載 Vim 插件

如上圖,下載 Vim 插件。這裡需要注意,強烈推薦 不使用Vim自帶的組合快捷鍵 Ctrl ,因為其會覆蓋掉 VS Code 本身的快捷鍵以及其他插件的快捷鍵 。

取消勾選 useCtrlKeys 設置

如上圖,可以在 Settings 中搜索 useCtrlKeys 配置,並取消勾選。

vim scroll

值得注意的是,我們依然可以使用 Ctrl + u 和 Ctrl + d 實現上下滾動頁面,滾動行數默認為半頁大小。

Vim 基礎

這裡要介紹的是 Vim 基礎中的基礎,但還是沒有 Vim 基礎的初學者也可以去 B 站搜索 Vim 相關的教程再鞏固一下(我之後也可能錄視頻)。

vim 基礎

如上圖:

•Vim 中默認是 normal 模式,此時敲擊字母是在敲擊命令,而非編輯文本;輸入 i 進入 insert 模式,此時敲擊字母才是輸入字母•insert 模式下,退出鍵 Escape 回到 normal 模式•normal 模式下,hjkl分別是左下上右

vim 中 a i o 操作

如上:

•normal 模式下,Shift + a(以後記作A)移到行末,並轉為 insert 模式;I是行前•normal 模式下,o是下插一行,並跳轉

vim 中 w b 操作

如上:

•normal 模式下,w是向前移動一個單詞,b則是向後移動一個單詞

vim 中的複製粘貼

如上:

•normal 模式下,d是開啟剪切模式,因此,dw則是剪切一個單詞;dd是剪切一行•normal 模式下,y則是複製,而p是粘貼

vim 中 s x

如上:

•normal 模式下,s是刪除當前光標所指並轉為 insert 模式,x是刪除並且不轉換

vim 中 g

如上:

•normal 模式下,15gg是跳轉到15行

vim 中的 visual

如上:

•normal 模式下,是開啟選中 visual 模式

VS Code 中常用 Vim 組合邏輯

Vim 愛好者常說:Vim是一種邏輯,而非死記硬背快捷鍵(我還算不上 Vim 愛好者,這句話不是我說的,是 Linux 社區的一些朋友們說的)。

我對於 Vim 『邏輯』的理解,大概如下:

•大小寫是一種相反的邏輯•VS Code 中一些 Ctrl 與滾動•i(意味著在括號裡

展開的解釋如下文。

大小寫是一種相反的邏輯

我們知道,當光標在_處時,想要刪除 _xyz ,那麼就要首先 找到最近的z的位置,然後刪除這個區間內的東西。 在 vim 中,則是輸入 dfz 來表達, fz 則是 找到 z 的意思 。

vim 中 f 與 F

那麼,向前查找是什麼呢?答案是大寫的 F ,具體例子如上圖。

vim 中 o 與 O

如上,用 o 可以很輕鬆地向下插入一行,而用 O 則是向上插入一行。

VS Code 中一些 Ctrl 與滾動vim 中的 []

如上,使用 Shift + [] 是以「代碼塊」為單位跳行。

vim 中 Ctrl + []

如上,Ctrl + [] 實現縮進的調整。這裡結合了 visual 模式。

vim 中滾動

如上,[[ 跳到文件首行,而 ]] 則是行末。

vim 中 H L M z

如上,H 是到屏幕的頂部,L 是屏幕的底部,M 是屏幕的中央;而 zz 是『將光標放到屏幕中央,且不移動光標的位置(滾動屏幕)』,zt 是將光標放到頂部,zb 是底部。

i( 意味著在括號裡

如上,當我們想清空 print() 函數括號內的東西,我們「有邏輯地」告訴 vim 即可。把光標移到括號內,輸入 ci( 或 ci),其中 i( 是『在括號內』。

一種邏輯

如上,不僅是 c 操作,也不僅僅是 () ,對於 ""、[] 等都適用。

此外,還有很多邏輯可以組合,比如:j是向下跳轉一行,那麼 10j 就是向下10行。 此外,/ 查找功能在 vs code 中同樣適用。但是,我更喜歡 vs code 自帶的 ctrl + f 查找, vs code 自帶的組合鍵還有哪些妙用呢?我們下回分解。

好文章值得 點讚 在看 →

關於 vim ,一定還有其他妙用,歡迎留言你的常用高效操作~

此外,推薦給大家推薦一本 vs code 的黑寶書,雖然我一般不建議購買「軟體類的工具書」,但是這本書還涵蓋了 vs code 的社區、歷史,由微軟的工程師韓老師撰寫。因為我是 vs code 社區中比較積極的志願者,所以有幸得到了本書的籤名款。非常全面,vs code 只有你想不到,沒有做不到(做不到去 github 上提 issue 呀,馬上就可以做到了),讀下來還是非常不錯的。我這裡提供一個連結,希望大家理性消費(畢竟挺厚的)。

相關焦點

  • 跳轉引用、禪模式...VS Code 中 11 個快捷鍵/操作,讓你的效率與舒適度翻倍!
    跳轉引用、禪模式...VS Code 中 11 個快捷鍵/操作,讓你的效率與舒適度翻倍!
  • 我最終還是選擇了VS code!
    雖然一些小的項目可以使用vim完成,但是在大一些的工程,就會覺得處處都顯得非常不順手。而且,對於記憶vim繁多的快捷鍵一直非常排斥,可能還是習慣的問題。因此,在我的遠程開發之路上,就開始了長時間的變遷之路。
  • VS Code安裝及使用基礎教程
    介紹 VS Code 的優點:支持30多種常用語言的語法高亮,並對html、js、css、Angular等很好的語法支持,並且還支持MarkDown的預覽體積小,功能強大,當然性能也是很好的,打開超大型的文本文件也不會卡死,大家可以和其他的一些文本編輯器對比一下支持命令操作(Ctrl + Shift + P)和滑鼠操作,還有大量的快捷鍵
  • 我最終還是選擇了 VS Code!
    雖然一些小的項目可以使用vim完成,但是在大一些的工程,就會覺得處處都顯得非常不順手。而且,對於記憶vim繁多的快捷鍵一直非常排斥,可能還是習慣的問題。因此,在我的遠程開發之路上,就開始了長時間的變遷之路。
  • 寫給 VS Code 用戶的 Vim 入坑指南
    插入模式插入模式其實大家都很熟悉,一般的編輯器默認的狀態就是 Vim 中的插入模式。在插入模式我們能夠進行插入字符、換行等操作。當然,在這個模式裡面也可以通過方向鍵移動光標,假如忽略其他的模式的話,完全可以把 Vim 當成普通的編輯器進行使用。
  • VS Code 中文社區 Workshop 基礎篇 —— First Step to VS Code
    VS Code 學習資料老師推薦了學習資料:VS Code 官網是一個很好的選擇 https://code.visualstudio.com/;知乎玩轉 VS Code 專欄 https://zhuanlan.zhihu.com/vs-code;VS Code 插件開發樣例- GitHub 上的代碼倉庫 microsoft/vscode-extension-samples
  • Vscode常用的快捷鍵
    #vs code 的常用快捷鍵- 單行注釋:[ctrl+k,ctrl+c] 或 ctrl+/
  • VS Code 插件開發入門教程
    常用的有:onLanguage   在打開特定語言類型的文件後激活由於我們的插件是配置的onCommand啟動,並且指定的命令名是Hello World,所以我們在新開的vscode窗口中按下快捷鍵Command+Shift+P後再找到Hello World,選中並執行即可。
  • 如何快速上手一款 IDE - VSC 配置指南和插件推薦
    進入之後,搜索 setting 和 keyboard 就可以進行設置了,打開 IDE 配置的快捷鍵我調整為 Command+,,打開快捷鍵配置界面的快捷鍵我調整為 Command+Shift+,,這個配置給我帶來了很大的便利,配合關鍵字搜索,我幾乎可以在十幾秒內完成任何一個功能的快捷鍵配置和界面的修改。
  • VS Code 必知必會的 20 個快捷鍵!
    當然,你也可以自己設置綁定你自己的快捷鍵:File > Preferences > Keyboard Shortcuts拆分編輯器可以使用拆分的快捷鍵,使用 123 也可以切換編輯器焦點。默認情況下,編輯器界面使用的垂直列布局(在你拆分編輯器時,默認會在側面打開)你也可以輕鬆的按照自己的喜好進行水平和垂直布局:為了支持更加靈活的布局,您可以創建一個空的編輯器組。
  • 一個超級強大的vim 配置介紹:vimplus
    一般性配置可放入該文件,可覆蓋~/.vimrc裡面的配置插件列表插件說明備註cpp-mode提供生成函數實現、函數聲明/實現跳轉、.h .cpp切換等功能默認安裝vim-edit方便的文本編輯插件默認安裝change-colorscheme主題切換默認安裝prepare-code新建文件時生成預定義代碼默認安裝vi
  • 推薦 20個提高開發效率的 VS Code 快捷鍵!
    7、編輯器網格布局默認情況下,編輯器界面使用的垂直列布局(在你拆分編輯器時,默認會在側面打開)你也可以輕鬆的按照自己的喜好進行水平和垂直布局:為了支持更加靈活的布局,您可以創建一個空的編輯器組。默認情況下,在你關閉最後一個編輯窗口時,該組也會被關閉掉,但你可以使用下面的配置來關閉這個默認行為:"workbench.editor.closeEmptyGroups": false在 View > Edit Layout 的菜單中,也有預設的布局:8、單詞選中在 Windows 上:Ctrl+ d在 Mac 上: Command + d在 Ubuntu 上
  • 20個提高開發效率的 VS Code 快捷鍵,你值得擁有!
    當然,你也可以自己設置綁定你自己的快捷鍵:File > Preferences > Keyboard Shortcuts拆分編輯器可以使用拆分的快捷鍵,使用 123 也可以切換編輯器焦點。默認情況下,編輯器界面使用的垂直列布局(在你拆分編輯器時,默認會在側面打開)你也可以輕鬆的按照自己的喜好進行水平和垂直布局:為了支持更加靈活的布局,您可以創建一個空的編輯器組。
  • linux之vi,vim命令
    n 行p,P,.粘貼ddp當前行和下一行互換位置J合併行Ctrl+r重複上一次動作Ctrl+z暫停並退出ZZ保存離開xp交換字符後面的交換到前面~更換當前光標位置的大小寫,並光標移動到本行右一個位置,直到無法移動光標詳細操作按鍵效果Ctrl+e向下滾動Ctrl+b向上翻頁b按照單詞向前移動 字首B按照單詞向前移動 字首 忽略一些標點符號e按照單詞向後移動 字尾E按照單詞向後移動 忽略一些標點符號w按照單詞向後移至次一個字首
  • linux中vi,vim操作技巧
    > vim rumenz.txt123:q刪除一行或者多行通過退格鍵(Backspace)來刪除一行代碼顯然是太麻煩了。可以通過切換到正常模式(編輯模式下按 ESC 鍵)來進行操作:dG:(先輸入d,然後按 shift 鍵輸入 g)刪除當前行至最後一行的所以行。
  • 把VS Code打造成Java開發IDE,也挺爽!
    MacOS上通過Homebrew安裝vs code:brew cask install visual-studio-code當然也可以選擇不自動安裝已有擴展,同樣可以順利進行後面的配置發布變更記錄,在Visutal Studio Code Marketplace的詳情頁中有該文件的連結。
  • 30條VS Code快捷鍵,使您的編程體驗更輕鬆
    來源:https://www.linuxmi.com/vs-code-30-shortcuts.htmlVisual Studio Code或簡稱VS Code是一款代碼編輯器如果您是開發者並且使用VS Code,則應了解一些VS Code快捷鍵。非常實用的Visual Studio Code快捷鍵快捷鍵在編程中至關重要,因為它們使開發者更輕鬆,更快捷地進行操作。就像用鍵盤彈奏一樣。要使用VS Code中的快捷鍵,您首先需要安裝一些擴展和插件。
  • 30 條 VS Code 快捷鍵,使您的編程體驗更輕鬆!
    如果您是開發者並且使用VS Code,則應了解一些VS Code快捷鍵。非常實用的Visual Studio Code快捷鍵 快捷鍵在編程中至關重要,因為它們使開發者更輕鬆,更快捷地進行操作。就像用鍵盤彈奏一樣。要使用VS Code中的快捷鍵,您首先需要安裝一些擴展和插件。
  • 推薦一款支持在瀏覽器上運行 VS Code 的服務端神器 Code-Server
    這裡以 Linux 系統為例:$ wget https://github.com/codercom/code-server/releases/download/1.939-vsc1.33.1/code-server1.939-vsc1.33.1-linux-x64.tar.gz$ tar xzvf code-server1.939-
  • 10個提高開發效率的 VS Code 快捷鍵!
    下面列出了一些智米們都應該儘快學習的快捷鍵。