Cut, copy, paste
Apart from standard cut, copy, and paste operations, JetBrains Rider lets you copy file paths, symbol references, and so on. When pasting, you can optionally choose items from clipboard history and automatically apply formatting rules.
Cut and copy code to the clipboard
Cut line or selection
Place the caret anywhere in the line to cut the whole line, or select a block that you want to cut.
Press Control+X or choose
from the main menu .
Copy line or selection
Place the caret anywhere in the line to copy the whole line, or make a selection to copy.
Press Control+C or choose
from the main menu .
When cutting and copying text from the editor, by default JetBrains Rider puts it as rich text to the clipboard, keeping the highlighting colors and font. But you can also copy it as plain text.
Copy selection as plain text
If you want to always copy editor selection as plain text, clear the Copy (Ctrl+C) as rich text checkbox on the Editor | General page of the IDE settings Control+Alt+S.
If you want to have a rich-text copy by default, you can make a single plain-text copy by right-clicking the selection and choosing Copy / Paste Special | Copy as Plain Text from the context menu.
Copy code reference information
When you need to log or share the context of the current location, such as the name of the symbol under the caret or its XML-documentation ID, the path to the file or the VCS path, you can press Control+Alt+Shift+C and copy the desired reference from a popup:
Copy symbol name
When you invoke this command on any symbol (declaration or usage), it automatically copies its fully-qualified name to the clipboard. If you need the name or namespace only, you can choose those in the popup.
You may need the fully-qualified name of a symbol in different situations, for example, when you use reflection.
Copy XML-Doc ID
When you invoke this command within a namespace, type, or a member, you can choose XML-Doc ID from the popup to copy the XML-documentation ID of the enclosing entity. You can use this ID when referencing this entity in XML-doc comments of other symbols. For more information about the ID format, refer to Processing the XML File (C# Programming Guide).
For example, for the method MyMethod
declared as
the XML-doc ID will be M:MyNamespace.MyClass.MyMethod
Copy paths
There are also several ways to copy the path to the current file and line in any format:
Press Control+Shift+C to copy the absolute path to the current file.
Choose
from the main menu. In the popup that opens, choose what part of the path you want to copy — filename, absolute, or relative path.
Copy GitHub repository URL
If the current file is in a Git repository with GitHub as remote, you can choose to copy the GitHub URl to the file from the popup. For example: https://github.com/user/repo/blob/id/MyProject/src/MyFile.cs#L25.
You can also make a selection before invoking this action to have the link with a highlighted selection right on GitHub.
Copy editor tooltip contents
JetBrains Rider editor displays additional information for code elements in tooltips. For example, error description Control+F1, which appears on highlighted code issues if the design-time code inspection is enabled for the current file, or Quick Documentation Control+Q that shows full symbol specification (and its documentation if available).
You can copy the full contents of the tooltip by Alt-clicking it (Ctrl+Alt-clicking it if you are on Linux).
Paste from the clipboard
When pasting C# and VB.NET code from the clipboard, JetBrains Rider behaves depending on the state of the Auto-format on paste selector on the page of JetBrains Rider settings Control+Alt+S.
This selector lets you configure whether to apply code formatting rules for pasted code. By default, JetBrains Rider only applies indentation settings when you paste code, which is a convenient option if you do not want to follow formatting rules very strictly.
Paste the last clipboard entry
Place the caret to the place where you want to paste the last clipboard entry or select a code block that you want to replace with the clipboard entry.
Press Control+V or choose
from the main menu .
Alternatively to pasting with the selected formatting preference, you can insert the clipboard entry with its original formatting.
Paste the last clipboard entry with original formatting
Place the caret to the place where you want to paste the last clipboard entry or select a code block that you want to replace with the clipboard entry.
Press Control+Alt+Shift+V or choose
from the main menu .
You can also access your clipboard history and quickly paste any of the recent items copied to the clipboard. JetBrains Rider starts recording copied items to its clipboard history as soon as you start it and clears the history when you close it.
Paste specific entry from the clipboard history
Place the caret to the place where you want to paste the last clipboard entry or select a code block that you want to replace with the clipboard entry.
Press Control+Shift+V or choose
from the main menu .In the Choose Content to Paste dialog, you can choose one of the recent clipboard entries and preview it.
Click Paste or Pate without formatting to paste the desired entry in a corresponding way. Alternatively, press a mnemonic key displayed next to the desired entry to quickly insert it.
If you want to clone a line or a selected block right under it, you don't have to copy and paste it. Instead, you can use a dedicated action for that.
Duplicate the current line or selection
If you want to clone a line, place the caret at this line line. To clone an arbitrary piece of code, select it in the editor.
To select a logical code block, press Control+W one or more times; to select the current declaration, press Control+Alt+Shift+[.
Press Control+D or choose
from the main menu . Alternatively, you can press Control+Shift+A, start typing the command name in the popup, and then choose it there.The duplicated line or multi-line selection is inserted below the original line or selection; the duplicated inline selection is inserted to the right of the original.
If you have duplicated a selection, the selection stays at the duplicate. If necessary, you can press Ctrl+Shift+Alt and then use arrow keys to move the duplicate to the desired position.
Note that when you duplicate a selection (even if the selection spans multiple lines), the duplicate is inserted right after the initial selection, without a line break.
If you want the selection to be copied as whole lines and pasted starting with a new line, use the Duplicate Entire Lines action.
This action doesn't have a keyboard shortcut by default, so you can either use Go to Action Control+Shift+A to invoke it, or add a keyboard shortcut to it.
Smart paste
JetBrains Rider helps you automatically escape illegal characters in text that you copy/paste around your code.
If the pasted text contains characters that are illegal for the current context JetBrains Rider automatically replaces these characters with the corresponding escape sequences.
You can press Control+Z immediately after pasting to undo the escaping and keep the pasted text as is.
For example, when you paste a piece of text that contains double quotes into a string literal, JetBrains Rider automatically escapes all the quotes.
Another example is pasting a piece of code with generics into an XML doc tag: JetBrains Rider will replace angle brackets with the corresponding escape sequences.
When pasting text inside comments, JetBrains Rider will escape */
when pasted into multiline comments and replace newlines with indent and //
or ///
when pasted into line or XML-doc comments.