The basic way to select a piece of text is to extend the selection with the mouse cursor. PyCharm, as a keyboard-centric IDE, suggests to use navigation keys to make selections. You can opt to select pieces of text by lines, or select rectangular fragments in the column mode, extend and shrink the selection, use multiselection, and sticky selection.
In this section:
- Selecting all text in the active editor tab
- Selecting with navigation keys
- Extending selection
- Shrinking selection
- Multiselection
- Toggling between line and column selection modes
- Using column selection mode
- Using smart selection
- Sticky selection
- Tips and tricks
Selecting all text in the active editor tab
To select the entire text in the current editor tab, do one of the following:
- On the main menu, choose .
- Press Ctrl+A.
Selecting with navigation keys
To select text from the current caret position to the beginning/end of the current word:
- Ctrl+Shift+Left, Ctrl+Shift+Right.
To select text from the caret position to the beginning/end of the current line:
- Double-click Ctrl and press Home/End
To select text from the current caret position to the top/bottom of the screen:
- Ctrl+Shift+Page Up, Ctrl+Shift+Page Down.
Extending selection
To extend selection from the word at caret to the piece of code the caret is contained in, do one of the following:
- On the main menu, choose
- Press Ctrl+W to select the word where the caret is currently located.
- Press Ctrl+W successively to extend selection to the next containing node
(for example, an expression, a paired tag, an entire conditional block, a method body, a class, a group of vararg arguments, etc.)
While extending selection, keep in mind that:
- Pressing Ctrl+W successively in plain text or comments extends the selection first to the current sentence, then to the current paragraph.
- Pressing Ctrl+W successively inside a list, dictionary, or a list of arguments or parameters, selects an element of the list, then the right or left comma and a neighbouring space (if any), then the contents of the list without parentheses, and finally the enclosing parentheses.
Shrinking selection
To shrink selection in the reverse order (from the outermost container to the word where the caret currently resides), do one of the following:
- On the main menu, choose
- Press Ctrl+Shift+W.
The selection extends or shrinks according to capitalization, if the Use "CamelHumps" words check box is selected on the Smart Keys page of the editor settings.
If you want to make selection according to capitalization, using double-click, make sure that the check box Honor CamelHumps words... is selected on the General page of the editor settings.
Multiselection
To select multiple words:
- Press
Shift+Alt
and double-click the left mouse button.
PyCharm also makes it possible to select multiple fragment of text. To do that, press Shift+Alt and drag the mouse pointer:
To select multiple rectangular fragments of text, press Ctrl+Shift+Alt and drag the mouse pointer:
Toggling between line and column selection modes
To toggle between the line and the column selection modes, do one of the following:
- On the main menu, choose .
- On the context menu of the editor, choose .
- Press Shift+Alt+Insert.
Using column selection mode
To make selection in the Column Selection Mode, do one of the following:
- Keeping the Alt key pressed, drag your mouse pointer to select the desired area.
- Keeping the middle mouse button pressed, drag your mouse pointer to select the desired area.
- Press Shift+Alt and the middle mouse button. This is specially helpful, if you want to avoid dragging.
Using smart selection
When you perform various code refactorings that involve selecting an expression , PyCharm can help you select the expression of interest. This feature is known as smart expression selection.
The chapter for the Extract Variable refactoring is just an example. The smart expression selection feature, in fact, is available in all the refactorings that start with selecting an expression.
To use smart expression selection, follow these steps:
-
Place the cursor before or within the expression.
- Choose Ctrl+Alt+V. from the main or the context menu, or press
-
In the
Expressions
pop-up menu, select the expression.
To do that, click the required expression. Alternatively, use the Up and Down arrow keys
to navigate to the expression of interest, and then press Enter to select it.
Sticky selection
To toggle sticky selection, do one of the following:
- Press Ctrl+Shift+A, in the pop-up frame type sticky, and choose Toggle Sticky Selection from the suggestion list:
- In the Emacs keymap, use keyboard shortcut Ctrl+Space.
Tips and tricks
- When sticky selection is on, you can turn it off by invoking copy or cut, or by toggling it again.
- To create a large rectangular selection, create a normal selection first, with the given starting and ending points, and then press Shift+Alt+Insert to toggle to the column selection mode.