
在UE4的C++工程和原始碼開發中,過去常使用Visual Studio系列來作為IDE,但VS始終對UE4工程支持的并不友好,小番茄Visual Assist X系列插件的安裝也是十分玄學,時不時就失靈,

JetBrains推出了Rider For UE4,經過一段時間的試用,感覺在日常開發上可以完勝VS+VA的,雖然還在測驗版本,但經過近年來的打磨,基本上是沒碰到過什么大毛病,
這里總結Rider在寫代碼時一些能夠大大提高效率的功能,文章內附上的快捷鍵是在Visual Studio模式下的,

1-編輯器快捷鍵
有時候在代碼里需要新起一行,有時候需要在上方,有時候需要在下方,如果游標直接在行內,使用Enter會把一行拆斷,所以我們常常是使用Home->Enter/End->Enter的兩步方式實作,右手需要按兩次,比較費事,這在Rider中是有快捷鍵的:
Ctrl+Enter:上方新起一行Shift+Enter:下方新起一行
Ctrl和Shift的上下關系稍微有點反直覺,可以自行在Setting->KeyMap里修改
一些其他行編輯快捷鍵:
Ctrl+L:洗掉行Ctrl+D:復制行/選中塊Ctrl+Alt+Shift+Up/Down:上下移動行(不破壞塊結構,還蠻神奇,就是反應有時候有點慢)
除了Rider自身在代碼左側提供的代碼塊折疊功能,還可以手動選中需要折疊的區域,使用快捷鍵折疊:
Ctrl+M, H:折疊選中(Hide)Ctrl+M, E:展開(Expand)Ctrl+M, S:折疊(Shrink)
2-搜索快捷鍵

雙擊Shift/Ctrl+T:全域快速搜索(Search Everywhere),精簡版的Find in Files,找一些專案里關鍵類的檔案比較方便;Ctrl+F:在檔案中查找,檔案中選中內容再搜索可以不用再填寫搜索內容;Ctrl+Shift+F:在所有檔案中搜索,搜索速度會慢一點,但比快速搜索更全;Ctrl+Shift+T:搜索檔案,用于按名字搜索檔案(快速搜索中自動包含該選項)

Alt+\:用于快速搜索當前檔案內的一些方法/成員
3-導航快捷鍵
除了上面提到的檔案內快速搜索方法,還有一些檔案內快速導航的方法:
Ctrl+[:移到方法/類定義的第一行Alt+Up:移動到上一個方法Alt+Down:移動到下一個方法Ctrl+G:移動到指定行/列號

一種比較特殊的檔案內快速導航是結構視圖(Structure),可以以串列的方式直接查看當前檔案內的類、方法、成員函式等的情況,打開的快捷鍵是Ctrl+Alt+F,也可以在左下角找到選項頁按鈕,
代碼頁(Tab)導航的快捷鍵:
滑鼠中鍵單擊Tab:關閉Tab頁(就不用點小叉叉了)Ctrl+F4:關閉當前Tab頁(你甚至可以不用滑鼠)Alt+Left/Right:左右切換顯示的Tab頁Ctrl+Tab:使用Switcher快速切換Tab頁Shift+F4:使用獨立新視窗打開Tab頁
檔案級別的導航快捷鍵:

Ctrl+,:最近檔案Ctrl+Shift+,:最近修改過的檔案

Alt+`:導航選單(當前檔案/選中內容)Alt+Shift+L:在解決方案目錄里定位當前檔案
一些類/函式定義相關的檔案導航
F12:找到定義(Definition)/使用(Usage)Shift+F12:查找使用(Usage)

Alt+Shift+F12:快速展示使用(Usage)Ctrl+F12:查找實作(Implementation)Ctrl+Shift+F11:找到型別宣告(Type Declaration)
4-書簽視圖(Bookmarks)
在專案里閱讀大量的代碼時,經在各個檔案各個函式中導航來導航去的,一來二去的就容易在其中迷失了自我,Rider提供了書簽(Bookmarks)管理我們常去的代碼位置或者一些傳送門,

打開書簽的快捷鍵:Alt+2,或者在編輯器左下角可以找到,這是所有書簽的管理頁,其中還有自定義書簽名、添加書簽串列等操作,

Ctrl+K, K:在當前行添加普通書簽,會看到行號旁邊多出一個旗幟;


Ctrl+F11:添加有助記符號的書簽,可以給這個書簽添加一個助記符旗幟來代替普通的旗幟,更加有標示性;

Ctrl+`:彈出一個浮窗快速,單擊書簽可以快速預覽對應的代碼內容
5-繼承視圖(Hierarchy)
在想了解各個類之間的繼承關系時,Rider提供了一個非常有用的功能,就是繼承視圖(Hierarchy),

選中需要查看的類,然后使用Ctrl+E, H就可以打開對應的繼承視圖,上面有兩個選項比較關鍵,第一個是查看自己繼承了哪些父類(Supertypes),第二個是查看自己有哪些子類(Subtypes),
使用繼承視圖要比自己一個個的按F12然后在各個檔案之間腦補出各個類的繼承關系要直接了當的多,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/463495.html
標籤:其他
