提高使用 Visual Studio 開(kāi)發(fā)效率的鍵盤(pán)快捷鍵標(biāo)題
關(guān)鍵字
萬(wàn)能重構(gòu).
重構(gòu)
重命名
其他.
重命名.
IntelliSense
自動(dòng)完成列表
智能感知
參數(shù)信息.
智能感知.
參數(shù)信息.
編寫(xiě)代碼格式化
代碼格式化.
其他.
導(dǎo)航.
書(shū)簽.
顯示.
鼠標(biāo)轉(zhuǎn)到所有.
萬(wàn)能重構(gòu)
你可以不記住本文的其他任何快捷鍵莉钙,但這個(gè)你一定要記住,那就是:
當(dāng)然径荔,因?yàn)橹形妮斎敕〞?huì)占用這個(gè)快捷鍵劫流,所以我更喜歡將這個(gè)快捷鍵修改一下背苦,改成:
修改方法可以參見(jiàn):如何快速自定義 Visual Studio 中部分功能的快捷鍵埃撵。
它的功能是“快速操作和重構(gòu)”含滴。你幾乎可以在任何代碼上使用這個(gè)快捷鍵來(lái)快速修改你的代碼。
比如修改命名空間:
比如提取常量或變量:
比如添加參數(shù)判空代碼:
還有更多功能都可以使用此快捷鍵胶果。而且因?yàn)?Roslyn 優(yōu)秀的 API匾嘱,有更多擴(kuò)展可以使用此快捷鍵生效,詳見(jiàn):基于 Roslyn 同時(shí)為 Visual Studio 插件和 NuGet 包開(kāi)發(fā) .NET/C# 源代碼分析器 Analyzer 和修改器 CodeFixProvider早抠。
轉(zhuǎn)到所有
不能每次都去解決方案里面一個(gè)個(gè)找文件霎烙,對(duì)吧!所以一個(gè)快速搜索文件和符號(hào)的快捷鍵也是非常能夠提升效率的蕊连。
Ctrl + ,
轉(zhuǎn)到所有(go to all)
不過(guò)我建議將其改成:
Ctrl + N
這是 ReSharper 默認(rèn)的轉(zhuǎn)到所有(Goto Everything)的快捷鍵
這可以幫助你快速找到整個(gè)解決方案中的所有文件或符號(hào)悬垃,看下圖:
修改方法可以參見(jiàn):如何快速自定義 Visual Studio 中部分功能的快捷鍵,下圖是此功能的命令名稱(chēng) 編輯.轉(zhuǎn)到所有
(Edit.GoToAll
):
有一些小技巧:
- 你可以無(wú)需拼寫(xiě)完整個(gè)單詞就找到你想要的符號(hào)例如輸入
mw
就可以找到MainWindow
- 例如輸入
mw
就可以找到MainWindow
- 對(duì)于兩個(gè)以上單詞拼成的符號(hào)甘苍,建議將每個(gè)單詞的首字母輸入成大寫(xiě)尝蠕,這樣可以提高目標(biāo)優(yōu)先級(jí),更容易找到例如
PrivateTokenManager
羊赵,如果希望干擾少一些趟佃,建議輸入PTM
而不是ptm
;當(dāng)然想要更少的干擾昧捷,可以打更多的字母闲昭,例如priToM
等等 - 例如
PrivateTokenManager
,如果希望干擾少一些靡挥,建議輸入PTM
而不是ptm
序矩;當(dāng)然想要更少的干擾,可以打更多的字母跋破,例如priToM
等等
注意到上面的界面里面右上角有一些過(guò)濾器嗎簸淀?這些過(guò)濾器有單獨(dú)的快捷鍵。這樣就直接搜索特定類(lèi)型的符號(hào)毒返,而不是所有了租幕,可以提高查找效率。
Ctrl + O
查找當(dāng)前文件中的所有成員(只搜一個(gè)文件拧簸,這可以大大提高命中率) Ctrl + T
轉(zhuǎn)到符號(hào)(只搜類(lèi)型名稱(chēng)劲绪、成員名稱(chēng)) Ctrl + G
查找當(dāng)前文件的行號(hào)(比如你在代碼審查中看到一行有問(wèn)題的代碼,得知行號(hào)盆赤,可以迅速跳轉(zhuǎn)到這一行)
重構(gòu)
重命名
F2
如果你在一個(gè)標(biāo)識(shí)符上直接重新輸入改了名字贾富,也可以通過(guò) Ctrl + .
或者 Alt + Enter
完成重命名。
其他
這些都可以被最上面的 Ctrl + .
或者 Alt + Enter
替代牺六,因此都可以忘記颤枪。
Ctrl + R, Ctrl + E
封裝字段 Ctrl + R, Ctrl + I
提取接口 Ctrl + R, Ctrl + V
刪除參數(shù) Ctrl + R, Ctrl + O
重新排列參數(shù)
IntelliSense 自動(dòng)完成列表
智能感知
IntelliSense 以前有個(gè)漂亮的中文名字,叫做“智能感知”淑际,不過(guò)現(xiàn)在大多數(shù)的翻譯已經(jīng)與以前的另一個(gè)平淡無(wú)奇的功能結(jié)合到了一起畏纲,叫做“自動(dòng)完成列表”扇住。Visual Studio 默認(rèn)只會(huì)讓智能感知列表發(fā)揮非常少量的功能,如果你不進(jìn)行一些配置霍骄,使用起來(lái)會(huì)“要什么沒(méi)什么”台囱,想顯示卻不顯示。
請(qǐng)通過(guò)另一篇博客中的內(nèi)容把 Visual Studio 的智能感知列表功能好好配置一下读整,然后我們才可以再次感受到它的強(qiáng)大(記得要翻到最后哦):
如果還有一些時(shí)機(jī)沒(méi)有打開(kāi)智能感知列表簿训,可以配置一個(gè)快捷鍵打開(kāi)它,我這邊配置的快捷鍵是 Alt + 右
米间。
參數(shù)信息
Ctrl + Shift + 空格
顯示方法的參數(shù)信息强品。
默認(rèn)在輸入?yún)?shù)的時(shí)候就已經(jīng)會(huì)顯示了;如果錯(cuò)過(guò)了屈糊,可以在輸入 ,
的時(shí)候繼續(xù)出現(xiàn)的榛;如果還錯(cuò)過(guò)了,可以使用此快捷鍵出現(xiàn)逻锐。
編寫(xiě)
代碼格式化
Ctrl + K, Ctrl + E
全文代碼清理(包含全文代碼格式化以及其他功能) Shift + Alt + F
全文代碼格式化 Ctrl + K, Ctrl + F
格式化選定的代碼
關(guān)于代碼清理夫晌,你可以配置做哪些事情:
其他
Ctrl + K, Ctrl + /
將當(dāng)前行注釋或取消注釋 Ctrl + K, Ctrl + C
將選中的代碼注釋掉 Ctrl + K, Ctrl + U
或 Ctrl + Shift + /
將選定的內(nèi)容取消注釋
Ctrl + U
將當(dāng)前選中的所有文字轉(zhuǎn)換為小寫(xiě)(請(qǐng)記得配合 F2 重命名功能使用避免編譯不通過(guò)) Ctrl + ]
增加行縮進(jìn) Ctrl + [
減少行縮進(jìn)
Ctrl + S
保存文檔 Ctrl + K, S
保存全部文檔(注意按鍵,是按下 Ctrl + K
之后所有按鍵松開(kāi)昧诱,然后單按一個(gè) S
)
導(dǎo)航
Ctrl + F
打開(kāi)搜索面板開(kāi)始強(qiáng)大的搜索功能 Ctrl + H
打開(kāi)替換面板晓淀,或展開(kāi)搜索面板為替換面板 Ctrl + I
漸進(jìn)式搜索(就像 Ctrl + F 一樣,不過(guò)不會(huì)搶焦點(diǎn)盏档,搜索完按回車(chē)鍵即完成搜索凶掰,適合鍵盤(pán)黨操作) Ctrl + Shift + F
打開(kāi)搜索窗口(與 Ctrl + F 雖然功能重合,但兩者互不影響蜈亩,意味著你可以充分這兩套搜索來(lái)執(zhí)行兩套不同的搜索配置) Ctrl + Shift + H
打開(kāi)替換窗口(與 Ctrl + H 雖然功能重合懦窘,但兩者互不影響,意味著你可以充分這兩套替換來(lái)執(zhí)行兩套不同的替換配置) Alt + 下
在當(dāng)前文件中稚配,將光標(biāo)定位到下一個(gè)方法 Alt + 上
在當(dāng)前文件中畅涂,將光標(biāo)定位到上一個(gè)方法
Ctrl + M, Ctrl + M
將光標(biāo)當(dāng)前所在的類(lèi)/方法切換大綱的展開(kāi)或折疊 Ctrl + M, Ctrl + L
將全文切換大綱的展開(kāi)或折疊(如果當(dāng)前有任何大綱折疊了則全部展開(kāi),否則全部折疊) Ctrl + M, Ctrl + P
將全文的大綱全部展開(kāi) Ctrl + M, Ctrl + U
將光標(biāo)當(dāng)前所在的類(lèi)/方法大綱展開(kāi) Ctrl + M, Ctrl + O
將全文的大綱都折疊到定義那一層
Ctrl + D
查找下一個(gè)相同的標(biāo)識(shí)符道川,然后放一個(gè)新的脫字號(hào)(或者稱(chēng)作輸入光標(biāo))(多次點(diǎn)按可以在相同字符串上出很多光標(biāo)毅戈,可以一起編輯,如下圖) Ctrl + Insert
查找所有相同的標(biāo)識(shí)符愤惰,然后全部放置脫字號(hào)(如下圖)
脫字號(hào) 是 Visual Studio 中對(duì)于輸入光標(biāo)的稱(chēng)呼,對(duì)應(yīng)英文的 Caret赘理。
書(shū)簽
Ctrl + K, Ctrl + K
為當(dāng)前行加入到書(shū)簽或從書(shū)簽中刪除 Ctrl + K, Ctrl + P
切換到上一個(gè)書(shū)簽 Ctrl + K, Ctrl + N
切換到下一個(gè)書(shū)簽 Ctrl + K, Ctrl + L
刪除所有書(shū)簽(會(huì)有對(duì)話框提示的宦言,不怕誤按)
如果配合書(shū)簽面板,那么可以在調(diào)查問(wèn)題的時(shí)候很方便在找到的各種關(guān)鍵代碼處跳轉(zhuǎn)商模,避免每次都尋找奠旺。
另外蜘澜,還有個(gè)任務(wù)列表,跟書(shū)簽列表差不多的功能:
Ctrl + K, Ctrl + H
將當(dāng)前代碼加入到任務(wù)列表中或者從列表中刪除(效果類(lèi)似編寫(xiě) // TODO
)
顯示
Ctrl + R, Ctrl + W
顯示空白字符 Alt + Z
切換自動(dòng)換行和單行模式
鼠標(biāo)
最后提及一個(gè)响疚,Ctrl + 鼠標(biāo)點(diǎn)擊
可以跳轉(zhuǎn)到定義鄙信。
</main>
<footer>
[](https://www.baklib.com?utm_source=footer) 提供技術(shù)支持
</footer>
[0](javascript:;) [0](javascript:;)