Visual Studio Jetbrains 常用快捷鍵


前言

本篇旨在介紹Visual Studio(也適用Microsoft SQL Server),Jetbrains全家桶(Rider、WebStorm)等常用快捷鍵,常用但不在於全。末尾有ReSharper和VS Code的快捷鍵圖。 
遵循的思想是:
1)雙手操作 > 單手操作,也就是減少純粹的右手鼠標操作,增加左手鍵盤的比重;
2)單手操作的距離越小越好,比如當一個IDE有多個KeyMap,或者同一個操作有多種實現方式時,選用距離最短的效率最高的;
3)當鼠標操作有類似“游戲微操作”的誤差或困難度時,快捷鍵能減少錯誤或微操作難度;肌肉記憶比在窗體上找更效率;

Visual Studio

  • 移動
    光標在元素間移動: Ctrl + <- 或 Ctrl + ->
  • 選中
    選中:Shift + <- 或 Shift + ->
    在移動的基礎上加上選中:Ctrl + Shift + <- 或 Ctrl + Shift + ->
    選中光標所在的元素:Ctrl + W 或 雙擊鼠標左鍵
  • 復制粘貼刪除
    復制某一行:將光標放置在該行任意處,Ctrl + C
    復制某一行到下一行處:將光標放置在該行任意處,Ctrl + D 或 在“復制某一行”的基礎上Ctrl + V(會自動復制到下一行)
    刪除某一行:將光標放置在該行任意處,Ctrl + X (實際是剪切,相比於其他操作,左手單手操作距離更短更效率)
  • 文件導航
    打開上一個訪問的文件:Ctrl + Tab
    選擇某一個打開過的文件正選:長按Ctrl + 點擊Tab選中
    選擇某一個打開過的文件反選:長按Ctrl + Shift + 點擊Tab選中
    搜索某一個文件:Alt + \ (智能搜索)
  • 代碼搜索
    當前文件里搜索:Ctrl + F
    當前解決方案搜索:Ctrl + Shift + F (比Ctrl + F再切換搜索范圍少一步)
    定位到某一個方法或者變量: Alt + \  (智能搜索)
  • 代碼導航
    導航到上一個光標的位置:Ctrl + - 
    返回到下一個光標的位置:Ctrl + Shift + - 
    導航到某一行:Ctrl + G 
    導航到定義:F12
    導航到實現:Ctrl + F12
  • 代碼撤銷與注釋
    撤銷:Ctrl + Z
    反撤銷: Ctrl + Shift + Z
    注釋:Ctrl + K Ctrl + C
    取消注釋:Ctrl + K Ctrl + U
  • 生成 Build
    Build某個項目:Ctrl + B
    Build整個解決方案:Ctrl + Shift + B
    中斷取消當前的Build:Ctrl + Break
    調試時附加到進程:Ctrl + Alt + P
  • 代碼整理
    格式規范化:Ctrl + K + D
    代碼折疊和代碼展開:Ctrl + M + L (需要展開所有代碼時,操作兩次此快捷鍵即可)
    折疊所有的方法:Ctrl + M + O
  • 重構 (同步影響所有被引用的地方)
    重命名變量、方法、類,接口等:Ctrl + R(按兩次)
    提取方法:選中某幾行代碼,Ctrl +R Ctrl + M
  • 萬能鍵
    Alt + Enter (其實是下圖中智能提示的快捷鍵)
                

    代碼有錯有紅色下划線:Alt + Enter, Enter (自動修復存在的錯誤)
    代碼檢測有黃色下划線:Alt + Enter, Enter   (一般是有更高級的語法糖)
    代碼檢測有灰色下划線:Alt + Enter, Enter   (自動刪除未使用)
    刪除所有未使用的Using:光標置於某個灰色Using行的任意處,Alt + Enter, Enter
    刪除所有未使用的變量:光標置於變量名處,Alt + Enter, Enter
    自動預實現接口:Alt + Enter, Enter
    自動給代碼定義變量:光標置於代碼末尾,Alt + Enter,(選擇引入本地),Enter
    用顯示類型代替var:光標置於var處,Alt + Enter, Enter
    內聯臨時變量(將變量定義取消,把之前已經用到的地方代還成變量的實際代碼):光標置於變量名處,Alt + Enter, Enter
    提取方法:選中某幾行代碼,Alt + Enter, Enter
    撤銷提取方法:光標置於方法名上,Alt + Enter, Enter
    任意地方:Alt + Enter 會有不同的操作提示

Jetbrains

  • KeyMap
    Ctrl + Alt + A,輸入keymap,Enter (默認快捷鍵)

  • 代碼搜索
    Ctrl + Shift + F :實時模糊匹配所搜的內容,並有文件后綴、正則等過濾條件,且支持在搜索結果框中直接修改;(整個解決方案)(當前文件為Ctrl + F)
    Ctrl + Shift + R :在Ctrl + Shift + F的基礎上替換代碼;(整個解決方案)(當前文件為Ctrl + F)
    定位到當前文件中某一個方法或者變量 :Ctrl + F12
  • 選中
    選中:Shift + <- 或 Shift + ->
    在移動的基礎上加上選中:Ctrl + Shift + <- 或 Ctrl + Shift + ->
    選中光標所在的元素:Ctrl + W (可以不斷按,將選中范圍向兩側不斷擴大)
  • 復制粘貼刪除
    復制某一行:將光標放置在該行任意處,Ctrl + C
    復制某一行到下一行處:將光標放置在該行任意處,Ctrl + D (沒有VS的Ctrl + V到下一行的功能)
    刪除某一行:將光標放置在該行任意處,Ctrl + X (實際是剪切,相比於其他操作,左手單手操作距離更短更效率)
  • 代碼導航
    導航到上一個光標的位置:Ctrl + Alt + <- 
    返回到下一個光標的位置:Ctrl + Alt + ->
    導航到某一行某一列:Ctrl + G (輸入100,10,多一個列的參數可選)
    導航到定義:Ctrl + B (能自動下載並導航到源碼
    導航到實現:Ctrl + Alt + B
  • 文件導航
    Ctrl + Shift + N:實時模糊匹配所搜的文件
    打開上一個訪問的文件:Ctrl + Tab
    選擇某一個打開過的文件正選:長按Ctrl + 點擊Tab選中
    選擇某一個打開過的文件反選:長按Ctrl + Shift + 點擊Tab選中
  • 代碼撤銷與注釋
    注釋:Ctrl + /
    取消注釋:Ctrl + /
    撤銷:Ctrl + Z
    反撤銷: Ctrl + Shift + Z
  • 生成 Build
    Build整個解決方案:Ctrl + F9
    中斷取消當前的Build:Ctrl + F2
    調試時附加到進程:Ctrl + Alt + F5
  • 代碼整理
    格式規范化:Ctrl + Alt + L
    代碼折疊:Ctrl + Shift + -
    代碼展開:Ctrl + Shift + +
  • 代碼管理集成:
    Annotate:專業查鍋,任意代碼行數上右鍵選擇Annotate,可以看到每一行最近一次修改的時間和當時代碼提交的信息(提交人,當次提交內容)

  • 重構(同步影響所有被引用的地方)
    提取變量:Ctrl + Alt + V
    取消提取變量(內聯臨時變量):Ctrl + Alt + N
    提取方法:Ctrl + Alt + M
    重命名變量、方法、類、接口等:Shift + F6
    安全刪除:Alt + Delete
    可重構操作列表:Ctrl + Shift + Alt + T
  • 萬能鍵
    Alt + Enter
    代碼有錯有紅色下划線:Alt + Enter, Enter (自動修復存在的錯誤)
    代碼檢測有黃色下划線:Alt + Enter, Enter   (一般是有更高級的語法糖)
    代碼檢測有灰色下划線:Alt + Enter, Enter   (自動刪除未使用)
    刪除所有未使用的Using:光標置於某個灰色Using行的任意處,Alt + Enter, Enter
    刪除所有未使用的變量:光標置於變量名處,Alt + Enter, Enter
    自動初始化構造函數參數:Alt + Enter, Enter
    自動預實現接口:Alt + Enter, Enter
    自動給代碼定義變量:光標置於代碼末尾,Alt + Enter,(選擇引入本地),Enter
    用顯示類型代替var:光標置於var處,Alt + Enter, Enter
    內聯臨時變量或方法(將變量定義取消,把之前已經用到的地方代還成變量的實際代碼):光標置於變量名處,Alt + Enter, Enter
    提取方法:選中某幾行代碼,Alt + Enter, Enter
    撤銷提取方法:光標置於方法名上,Alt + Enter, Enter
    任意地方:Alt + Enter 會有不同的操作提示

雜談

可以看出很多按鍵是有固定的含義的,並不是在沒被占用的按鍵中隨機找一個。
Shift:通常是反向操作的含義;
G:goto
F:find
V:var
M:method
R:refactor 重構
B:build
U:undo
C:copy/cancel

參考資料

   

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM