PyCharm 4.5.3 Help

Selecting Text in the Editor

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

To select the entire text in the current editor tab, do one of the following:

  • On the main menu, choose Edit | Select All.
  • 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 Edit | Extend Selection
  • 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 Edit | Shrink Selection
  • Press Ctrl+Shift+W.

Multiselection

To select multiple words:

  • Press Shift+Alt and double-click the left mouse button.
    multiselection1

PyCharm also makes it possible to select multiple fragment of text. To do that, press Shift+Alt and drag the mouse pointer:

multiselection2

To select multiple rectangular fragments of text, press Ctrl+Shift+Alt and drag the mouse pointer:

multiselection3

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 Edit | Column Selection Mode.
  • On the context menu of the editor, choose Column Selection Mode.
  • 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:

  1. Place the cursor before or within the expression.
    ws_php_storm_introduceVariableJSSmartSelectExpressionStart.png
  2. Choose Refactor | Extract Variable from the main or the context menu, or pressCtrl+Alt+V.
  3. 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.
    ws_php_storm_introduceVariableJSSmartSelectExpression.png

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:
    sticky_selection
  • 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.

See Also

Last modified: 18 July 2015