Smart Keys
for Windows and Linux
for macOS
Ctrl+Alt+S
Use this page to enable or disable specific smart keys and to define which actions you want to be invoked automatically.
Item | Description |
---|---|
Home | When this check box is selected, on pressing Home, the caret is positioned at the first non-space character of the current line. Pressing Home subsequently moves the caret from the Smart Home position to the first column and back. |
End (on blank line) | When this check box is selected, on pressing End in an empty line, the caret is positioned with the indent, which PyCharm assumes to be reasonable in the current code point (indentation is based on the current Code Style Settings). |
Insert pair bracket | Select this check box to have PyCharm automatically add a closing round or square bracket for each typed opening round or square bracket, respectively. |
Insert pair quote | Select this check box to have PyCharm automatically add a closing single or double quote for each typed opening single or double quote, respectively. See page Creating Documentation Comments |
Reformat block on typing "}" | If this check box is selected, then, on typing the closing curly brace, the enclosed code block is reformatted automatically, if the formatting of this code block does not match the selected code style. |
Use 'CamelHumps' words | Select this check box to have PyCharm discern separate words within CamelHump names. Words within a name should start with a capital letter or an underscore. This option impacts some editor actions, for example:
|
Surround selection on typing quote or brace | If this check box is selected, the selected text on typing a quote, double-quote or brace, will be surrounded with these characters. If this check box is not selected, then the typed quotes, double-quotes or braces will replace the selection. |
Add multiple carets on double Ctrl/⌥ with arrow keys | If this check box is selected, then:
|
Enter | Use this area to define the actions to be invoked by pressing Enter.
|
Backspace | Use this drop-down list to define the actions to be invoked by pressing Backspace key. The available options are: |
Reformat on paste | Use this drop-down list to specify how to place pasted code blocks. The available options are:
|
XML/HTML | In this area, define the actions to be invoked automatically when editing XML or HTML code.
|
CSS | In this area, define the selection of CSS identifiers/classes:
|
Smart indent pasted lines | If this check box is selected, the pasted lines are indented relative to the current caret location. Otherwise, the pasted lines are indented relative to the first column. |
Insert backslash when pressing Enter inside the statement | If this check box is selected, the continuation character will be inserted automatically on pressing Enter, preserving the correct syntax. If this check box is not selected, the line will be broken, and syntax error will be reported by on-the-fly code inspection. |
Insert 'self' when defining a method | If this check box is selected, the self parameter is inserted automatically after typing the opening brace, together with the closing brace and colon. If this check box is cleared, only closing brace is generated automatically. When necessary, use the suggested quick fix to insert |
Insert type placeholders in the documentation comment stub | If this check box is selected, then the placeholders for parameters, types and return types will be generated: """
:param a:
:type a:
:return:
:rtype:
""" If this check box is not selected, then only the placeholders for parameters and return will be generated: """
:param a:
:return:
""" |
Insert 'type' and 'rtype' to the documentation comment stub | If this check box is selected, the documentation comment stub will contain type tag for each parameter, and rtype tag for the return statement. |
Auto-insert closing }} and %} in Django templates | If this check box is selected, the closing characters will be automatically inserted after typing the opening ones. |
AngularJS | Use this area to define the behavior of AngularJS: |
SQL | Insert string concatenation on Enter. You may want to turn this option off, if the DBMS you are working with supports multiline string literals: Say, there is the following fragment for PostgreSQL SET notes = 'Lightest element' and the cursor is in front of the word If the option is on, and you press Enter, the fragment will change to: SET notes = 'Lightest ' ||
'element' Otherwise, the fragment will change to: SET notes = 'Lightest
element' |