Shortcuts, Editing, and Completion in Rider
Where to start? Let's learn the two most important shortcuts, editing, and code completion.
Keyboard Shortcuts
Rider has many keyboard shortcuts, and they all depend on which operating system you are using. Don't be overwhelmed, there are two essential shortcuts that help you achieve anything in Rider! They work cross-platform, and across all JetBrains IDE's:
- ⇧⇧ (macOS) / Shift+Shift (VS Windows/Linux), which brings up Search Everywhere. From here, you can navigate to types, symbols, files, recent files, actions, tool windows, run configurations, and preferences.
- ⌥⏎ (macOS) / Alt+Enter (VS Windows/Linux), which brings up a contextual menu with all actions that apply.
Windows, menus and pop-ups will show more keyboard shortcut hints, so you can learn them along the way.
In case you are looking for a full overview, use these cheat sheets to master your Rider keyboard scheme of choice:
- Default Keymap
- Mac OS X 10.5+ Keymap
- ReSharper OSX Keymap
- ReSharper Keymap
- Visual Studio Keymap
- Visual Studio OSX Keymap
Search Everywhere
With Search Everywhere (Shift, Shift), you can navigate to types, symbols, files, recent files, actions, tool windows, run configurations, and preferences.
The tool window lets you search, do partial matches, search for starting characters for results written in CamelCase, and so on.
Inspections, Quick-Fixes and Context Actions
The Alt+Enter shortcut brings up a context menu that contains quick-fixes, and context actions.
Quick-fixes are available for bits of code that triggered an inspection (code style, language features, code smells, potential errors, etc.)
We will go deeper into inspections and quick-fixes later on.
Editing
While coding, you will spend a lot of time in the Rider.
In the editor, we get code completion, and can complete statements. There are live templates, and postfix templates which can help us write code.
With expand/shrink selection, you can select code using its semantics, rather than using just characters and lines. Similarly, you can rearrange code and move expressions, statements, type members, and other elements in your code around.