<type>documentation</type>
<domain>commands</domain>
<id>index</id>
<title>Wing Personality</title>
<product>per+</product>

This section documents all the default key bindings for the ``Wing`` keyboard
personality, set by the `User Interface > Keyboard > Personality`__ preference.

__ script:show_preferences_gui#prefname="edit.personality"


**Alt-1**: **fold-python-methods** - Fold up all Python methods, expand all classes, and leave other fold
points alone

**Alt-2**: **fold-python-classes** - Fold up all Python classes but leave other fold points alone

**Alt-3**: **fold-python-classes-and-defs** - Fold up all Python classes, methods, and functions but leave other fold
points alone

**Alt-Backspace**: **backward-delete-word** - Action varies according to focus:  *Focused Editor Commands*: Delete one word behind of the cursor ; *Toolbar Search Commands*: Delete word behind the cursor

**Alt-Comma**: **query-replace** - Initiate incremental mini-search query/replace from the cursor 
position. 

**Alt-Delete**: **backward-delete-word** - Action varies according to focus:  *Focused Editor Commands*: Delete one word behind of the cursor ; *Toolbar Search Commands*: Delete word behind the cursor

**Alt-Down**: **fold-expand-more-current** - Expand the current fold point one more level 

**Alt-End**: **fold-expand-all** - Expand all fold points in the current file 

**Alt-F11**: **prev-points-of-use-match** - Display the previous match in the active points of use tool 

**Alt-F12**: **next-points-of-use-match** - Display the next match in the active points of use tool 

**Alt-F3**: **search** - Bring up the search manager in search mode. 

**Alt-F4**: **close-window** - Close the current window and all documents and panels in it

**Alt-F5**: **run-to-cursor** - Run to current cursor position

**Alt-F6**: **run-failed-tests** - Re-run all the previously failed tests.  The tests are debugged when
debug is True.

**Alt-F7**: **run-last-tests** - Run again the last group of tests that were run.  The tests are
debugged when debug is True.

**Alt-Home**: **fold-collapse-all** - Collapse all fold points in the current file 

**Alt-Left**: **visit-history-previous** - Move back in history to previous visited editor position

**Alt-Left-button-click**: **find-points-of-use-clicked** - Find points of use for last symbol clicked. 

**Alt-Page_down**: **fold-expand-all-current** - Expand the current fold point completely 

**Alt-Page_up**: **fold-collapse-all-current** - Collapse the current fold point completely 

**Alt-Period**: **replace-string** - Replace all occurrences of a string from the cursor position to 
end of file. 

**Alt-Return**: **new-line** - Place a new line at the current cursor position.  Override the auto-indent
preference by setting auto_indent to 'never' to avoid indent, 'always' to
auto-indent, and 'blank-only' to auto-indent only on blank lines.

**Alt-Right**: **visit-history-next** - Move forward in history to next visited editor position

**Alt-Shift-A**: **diff-merge-a-b** - Merge the current change from file A to file B

**Alt-Shift-B**: **diff-merge-b-a** - Merge the current change from file B to file A

**Alt-Shift-Down**: **next-line-extend-rect** - Move to next screen line, adjusting the rectangular selection range to new
position, optionally repositioning character within line: same' to leave
in same horizontal position, 'start' at start, 'end' at end, or 'fnb' for
first non-blank char.

**Alt-Shift-F4**: **find-points-of-use(search_project_files=False)** - Find points of use for a symbol.  The symbol defaults to the active
selection.  Finds points of use in the file the symbol is located and in
project files by default. 

**Alt-Shift-F5**: **debug-continue-all** - Continue all paused debug processes

**Alt-Shift-Left**: **backward-char-extend-rect** - Move cursor backward one character, adjusting the rectangular selection 
range to new position 

**Alt-Shift-N**: **diff-next** - Move to next difference in current diff/merge session

**Alt-Shift-P**: **diff-previous** - Move to previous difference in current diff/merge session

**Alt-Shift-Right**: **forward-char-extend-rect** - Move cursor forward one character, adjusting the rectangular selection 
range to new position 

**Alt-Shift-Up**: **previous-line-extend-rect** - Move to previous screen line, adjusting the rectangular selection range to new
position, optionally repositioning character within line: same' to leave
in same horizontal position, 'start' at start, 'end' at end, or 'fnb' for
first non-blank char.

**Alt-Slash**: **fold-toggle** - Toggle the current fold point 

**Alt-Tab**: **ai-suggest-next** - Move to the next suggested completion in AI suggestion mode.  Starts
AI suggestion mode if not already running.

This command requires first configuring an AI provider as described in the
AI Assisted Development chapter of the product manual.

**Alt-Up**: **fold-collapse-more-current** - Collapse the current fold point one more level 

**Back-button-click**: **visit-history-previous** - Move back in history to previous visited editor position

**Backspace**: **backward-delete-char** - Action varies according to focus:  *Focused Editor Commands*: Delete one character behind the cursor, or the current selection
if not empty. ; *Toolbar Search Commands*: Delete character behind the cursor

**Ctrl-0**: **next-document** - Move to the next document open in the current window. If alphabetical
is true, the list traversed will be alphabetized. If all_splits is true,
documents from all splits will be traversed; otherwise, only the current
split will be.

**Ctrl-1**: **activate-file-option-menu** - Activate the file menu for the editor. 

**Ctrl-2**: **activate-symbol-option-menu-1** - Activate the 1st symbol menu for the editor. 

**Ctrl-3**: **activate-symbol-option-menu-2** - Activate the 2nd symbol menu for the editor. 

**Ctrl-4**: **activate-symbol-option-menu-3** - Activate the 3rd symbol menu for the editor. 

**Ctrl-5**: **activate-symbol-option-menu-4** - Activate the 4th symbol menu for the editor. 

**Ctrl-6**: **activate-symbol-option-menu-5** - Activate the 5th symbol menu for the editor. 

**Ctrl-7 C**: **use-lexer-cpp** - Force syntax highlighting for C/C++ source

**Ctrl-7 H**: **use-lexer-html** - Force syntax highlighting for HTML

**Ctrl-7 M**: **use-lexer-makefile** - Force syntax highlighting for make files 

**Ctrl-7 N**: **use-lexer-none** - Use no syntax highlighting 

**Ctrl-7 P**: **use-lexer-python** - Force syntax highlighting for Python source

**Ctrl-7 S**: **use-lexer-sql** - Force syntax highlighting for SQL 

**Ctrl-7 X**: **use-lexer-xml** - Force syntax highlighting for XML files 

**Ctrl-8**: **recent-document** - Switches to previous document most recently visited in the current window
or window set if in one-window-per-editor windowing mode.

**Ctrl-9**: **previous-document** - Move to the previous document open in the current window. If alphabetical
is true, the list traversed will be alphabetized. If all_splits is true,
documents from all splits will be traversed; otherwise, only the current
split will be.

**Ctrl-A**: **select-all** - Select all text in the editor 

**Ctrl-Alt-B**: **search-sel-backward** - Search backward using current selection 

**Ctrl-Alt-Comma**: **query-replace-regex** - Initiate incremental mini-search query/replace from the cursor 
position.  The search string is treated as a regular expression.

**Ctrl-Alt-D**: **evaluate-sel-in-debug-console** - Evaluate the current selection from the editor within the Debug Console
tool. When whole_lines is set, the selection is rounded to whole lines
before evaluation. When unspecified (set to None), the setting from the
Shell's Option menu is used instead.

**Ctrl-Alt-Down**: **goto-next-bookmark(current_file_only=True)** - Go to the next bookmark, or the first one if no bookmark is selected. Stays within
the file in the current editor when current_file_only is True. Only bookmarks in the
current bookmark category are visited unless a category is passed.

**Ctrl-Alt-E**: **evaluate-sel-in-shell** - Evaluate the current selection from the editor within the Python Shell
tool, optionally restarting the shell first. When whole_lines is set, the
selection is rounded to whole lines before evaluation. When unspecified
(set to None), the setting from the Shell's Option menu is used
instead.

**Ctrl-Alt-F**: **search-sel-forward** - Search forward using current selection 

**Ctrl-Alt-F5**: **debug-kill-all** - Terminate all debug processes

**Ctrl-Alt-F6**: **debug-failed-tests** - Re-run all the previously failed tests in the debugger.

**Ctrl-Alt-F7**: **debug-last-tests** - Debug the last group of tests that were run. 

**Ctrl-Alt-G**: **goto-bookmark** - Goto named bookmark

**Ctrl-Alt-K**: **show-bookmarks** - Show a list of all currently defined bookmarks

**Ctrl-Alt-Left**: **goto-previous-bookmark** - Go to the previous bookmark in the bookmark list, or the last one if no bookmark is
selected. Stays within the file in the current editor when current_file_only is True.
Only bookmarks in the current bookmark category are visited unless a category is
passed.

**Ctrl-Alt-M**: **set-bookmark** - Set a bookmark at current location on the editor. Mark is the project-wide textual
name of the bookmark, the category is set to the current bookmark category, and notes
are left blank.

**Ctrl-Alt-Period**: **replace-string-regex** - Replace all occurrences of a string from the cursor position to 
end of file.  The search string is treated as a regular expression.

**Ctrl-Alt-Right**: **goto-next-bookmark** - Go to the next bookmark, or the first one if no bookmark is selected. Stays within
the file in the current editor when current_file_only is True. Only bookmarks in the
current bookmark category are visited unless a category is passed.

**Ctrl-Alt-Shift-F5**: **debug-stop-all** - Pause all free-running debug processes at the current program counter

**Ctrl-Alt-T**: **toggle-bookmark** - Set or remove a bookmark at current location on the editor. When set, the name of
the bookmark is set to an auto-generated default, the category is set to the current
bookmark category, and notes are left blank.  When removed, the bookmark is removed
without confirmation.

**Ctrl-Alt-Up**: **goto-previous-bookmark(current_file_only=True)** - Go to the previous bookmark in the bookmark list, or the last one if no bookmark is
selected. Stays within the file in the current editor when current_file_only is True.
Only bookmarks in the current bookmark category are visited unless a category is
passed.

**Ctrl-Alt-V**: **evaluate-file-in-shell** - Run or debug the contents of the editor within the Python Shell

**Ctrl-Apostrophe**: **enclose(start="\'", end="\'")** - Enclose the selection or the rest of the current line when there is no
selection with the given start and end strings.  The caret is moved to the
end of the enclosed text.

**Ctrl-B**: **isearch-sel-forward** - Action varies according to focus:  *Document Viewer Commands*: Initiate incremental mini-search forward from the cursor position,
using current selection as the search string.  Set persist=False to 
do the search but end the interactive search session immediately.; *Focused Editor Commands*: Initiate incremental mini-search forward from the cursor position,
using current selection as the search string.  Set persist=False to
do the search but end the interactive search session immediately.

**Ctrl-Backspace**: **backward-delete-word** - Action varies according to focus:  *Focused Editor Commands*: Delete one word behind of the cursor ; *Toolbar Search Commands*: Delete word behind the cursor

**Ctrl-Braceleft**: **enclose(start="{", end="}")** - Enclose the selection or the rest of the current line when there is no
selection with the given start and end strings.  The caret is moved to the
end of the enclosed text.

**Ctrl-Bracketleft**: **enclose(start="[", end="]")** - Enclose the selection or the rest of the current line when there is no
selection with the given start and end strings.  The caret is moved to the
end of the enclosed text.

**Ctrl-Bracketright**: **brace-match** - Match brace at current cursor position, selecting all text between
the two and hilighting the braces 

**Ctrl-C**: **copy** - Action varies according to focus:  *Document Viewer Commands*: Copy any selected text. ; *Exceptions Tool Commands*: Copy the exception traceback to the clipboard ; *Focused Editor Commands*: Copy selected text ; *Search Tool Commands*: Copy selected text ; *Toolbar Search Commands*: Cut selection 

**Ctrl-Comma**: **next-window** - Switch to the next window alphabetically by title

**Ctrl-D**: **selection-add-next-occurrence** - Add another selection containing the text of the current selection.
If skip_current is true, the current selection will be deselected.  If 
nothing is currently selected, select the current word.  Searches 
backwards if reverse is true. 

**Ctrl-Delete**: **forward-delete-word** - Action varies according to focus:  *Focused Editor Commands*: Delete one word in front of the cursor ; *Toolbar Search Commands*: Delete word in front of the cursor

**Ctrl-Down**: **select-less** - Select less code; undoes the last select-more command 

**Ctrl-E**: **brace-match** - Match brace at current cursor position, selecting all text between
the two and hilighting the braces 

**Ctrl-End**: **end-of-document** - Move cursor to end of document 

**Ctrl-Equal**: **zoom-in** - Action varies according to focus:  *Current Editor Commands*: Zoom in, increasing the text display size temporarily by one font size ; *Document Viewer Commands*: Increase documentation font size

**Ctrl-Exclam**: **ai-refactor**

**Ctrl-F**: **search** - Bring up the search manager in search mode. 

**Ctrl-F12**: **command-by-name** - Execute given command by name, collecting any args as needed 

**Ctrl-F3**: **search-sel-forward** - Search forward using current selection 

**Ctrl-F4**: **close** - Action varies according to focus:  *Application Control Commands*: Close active document.  Abandon any changes when ignore_changes is
True.  Close empty windows when close_window is true and quit if all
document windows closed when can_quit is true.; *Open Files Tool Commands*: Close the currently selected items in the Open Files tool

**Ctrl-F5**: **debug-kill** - Terminate current debug session (press Alt to terminate all debug processes)

**Ctrl-F6**: **step-over** - Step over current instruction

**Ctrl-F8**: **start-select-line** - Turn on auto-select mode line by line

**Ctrl-F9**: **break-clear-all** - Clear all breakpoints

**Ctrl-G**: **search-forward** - Search again using the search manager's current settings
in forward direction 

**Ctrl-Greater**: **indent-region** - Indent the selected region one level of indentation.  Set sel to None
to use preference to determine selection behavior, or "never-select" to
unselect after indent, "always-select" to always select after indent, or
"retain-select" to retain current selection after indent.

**Ctrl-H**: **replace** - Bring up the search manager in replace mode. 

**Ctrl-Home**: **start-of-document** - Move cursor to start of document 

**Ctrl-I**: **replace-and-search** - Replace current selection and search again. 

**Ctrl-Insert**: **copy** - Action varies according to focus:  *Document Viewer Commands*: Copy any selected text. ; *Exceptions Tool Commands*: Copy the exception traceback to the clipboard ; *Focused Editor Commands*: Copy selected text ; *Search Tool Commands*: Copy selected text ; *Toolbar Search Commands*: Cut selection 

**Ctrl-Iso_left_tab**: **begin-visited-document-cycle(move_back=False)** - Start moving between documents in the order they were visited.  Starts
modal key interaction that ends when a key other than tab is seen or ctrl
is released. 

**Ctrl-J**: **fill-paragraph** - Re-wrap the selected text or current line to the configured text wrap column. When
there is no selection, wrappable regions are delineated by surrounding blank lines.
Otherwise, when there is a selection, wrapping is constrained to occur only within
that selection. Wrapping behavior depends on context; for example, wrapping Python
code is different than wrapping plain text or the contents of comments and docstrings.
A shared leading prefix found on all lines is retained and only the content after the
prefix is wrapped.

**Ctrl-K**: **open-from-keyboard** - Open a file from disk using keyboard-driven selection of the file

**Ctrl-L**: **goto-line** - Position cursor at start of given line number 

**Ctrl-Left**: **backward-word** - Action varies according to focus:  *Focused Editor Commands*: Move cursor backward one word. Optionally, provide a string that
contains the delimiters to define which characters are part of a word.
Gravity may be "start" or "end" to indicate whether cursor is placed at
start or end of the word.; *Toolbar Search Commands*: Move backward one word

**Ctrl-Left-button-click**: **goto-clicked-symbol-defn** - Goto the definition of the source symbol that was last clicked on. If
other_split is true, the definition will be displayed if a split other
than the current split; if other_split is false, it will be displayed in
the current editor; if other_split is not specified or None, the split to
be used is determined by the Split Reuse Policy preference value.

**Ctrl-Less**: **outdent-region** - Outdent the selected region one level of indentation.  Set sel to None
to use preference to determine selection behavior, or "never-select" to
unselect after indent, "always-select" to always select after indent, or
"retain-select" to retain current selection after indent.

**Ctrl-M**: **execute-kbd-macro** - Execute most recently recorded keyboard macro.  If register is None then the
user is asked to enter a letter a-z for the register where the macro is filed.
Otherwise, register 'a' is used by default.

**Ctrl-Minus**: **zoom-out** - Action varies according to focus:  *Current Editor Commands*: Zoom out, increasing the text display size temporarily by one font size ; *Document Viewer Commands*: Decrease documentation font size

**Ctrl-N**: **new-file** - Create a new file 

**Ctrl-Next**: **forward-page-extend** - Move cursor forward one page, adjusting the selection 
range to new position 

**Ctrl-O**: **open-gui** - Open a file from local disk or a remote host, prompting with file
selection dialog if necessary.  The dialog shown depends on the default
starting directory, and may be for local files or remote files.

**Ctrl-P**: **print-view** - Print active editor document

**Ctrl-Page_down**: **next-document** - Move to the next document open in the current window. If alphabetical
is true, the list traversed will be alphabetized. If all_splits is true,
documents from all splits will be traversed; otherwise, only the current
split will be.

**Ctrl-Page_up**: **previous-document** - Move to the previous document open in the current window. If alphabetical
is true, the list traversed will be alphabetized. If all_splits is true,
documents from all splits will be traversed; otherwise, only the current
split will be.

**Ctrl-Parenleft**: **start-kbd-macro** - Start definition of a keyboard macro.  If register=None then the user
is prompted to enter a letter a-z under which to file the macro.  Otherwise,
register 'a' is used by default.

**Ctrl-Parenright**: **stop-kbd-macro** - Stop definition of a keyboard macro 

**Ctrl-Period**: **comment-toggle** - Toggle commenting out of the selected lines. The style of commenting
can be controlled with the style argument: 'indented' uses the default
comment style indented at end of leading white space and 'block' uses a
block comment in column zero.  Append '-pep8' to the style to conform
to PEP 8 comment format rules.  If not given, the style configured with the
Editor / Block Comment Style preference is used.

**Ctrl-Plus**: **zoom-in** - Action varies according to focus:  *Current Editor Commands*: Zoom in, increasing the text display size temporarily by one font size ; *Document Viewer Commands*: Increase documentation font size

**Ctrl-Pointer_button1**: **goto-clicked-symbol-defn** - Goto the definition of the source symbol that was last clicked on. If
other_split is true, the definition will be displayed if a split other
than the current split; if other_split is false, it will be displayed in
the current editor; if other_split is not specified or None, the split to
be used is determined by the Split Reuse Policy preference value.

**Ctrl-Prior**: **backward-page-extend** - Move cursor backward one page, adjusting the selection 
range to new position 

**Ctrl-Q**: **quit** - Quit the application. 

**Ctrl-Question**: **uncomment-out-region** - Uncomment out the selected region if commented out.  If one_level is 
True then each call removes only one level of commenting.

**Ctrl-Quotedbl**: **enclose(start='\"', end='\"')** - Enclose the selection or the rest of the current line when there is no
selection with the given start and end strings.  The caret is moved to the
end of the enclosed text.

**Ctrl-Quoteleft**: **begin-visited-document-cycle(move_back=True, back_key="Ctrl-Quoteleft", forward_key="Ctrl-AsciiTilde")** - Start moving between documents in the order they were visited.  Starts
modal key interaction that ends when a key other than tab is seen or ctrl
is released. 

**Ctrl-R**: **replace** - Bring up the search manager in replace mode. 

**Ctrl-Return**: **new-line-after** - Place a new line after the current line 

**Ctrl-Right**: **forward-word** - Action varies according to focus:  *Focused Editor Commands*: Move cursor forward one word. Optionally, provide a string that
contains the delimiters to define which characters are part of a word.
Gravity may be "start" or "end" to indicate whether cursor is placed
at start or end of the word.; *Toolbar Search Commands*: Move forward one word

**Ctrl-S**: **save** - Save active document.  Also close it if close is True.

**Ctrl-Shift-B**: **isearch-sel-backward** - Initiate incremental mini-search backward from the cursor position,
using current selection as the search string.  Set persist=False to
do the search but end the interactive search session immediately.

**Ctrl-Shift-C**: **delete-line** - Delete the current line or lines when the selection spans multiple
lines or given repeat is > 1

**Ctrl-Shift-D**: **selection-add-next-occurrence(skip_current=True)** - Add another selection containing the text of the current selection.
If skip_current is true, the current selection will be deselected.  If 
nothing is currently selected, select the current word.  Searches 
backwards if reverse is true. 

**Ctrl-Shift-Delete**: **delete-lines**

**Ctrl-Shift-Down**: **move-line-down** - Move the current line or lines up down line, optionally
indenting to match the new position

**Ctrl-Shift-End**: **end-of-document-extend** - Move cursor to end of document, adjusting the selection 
range to new position 

**Ctrl-Shift-F**: **batch-search** - Search on current selection using the Search in Files tool. The look_in argument gets
entered in the look in field if not None or ''. The current selection is put into the search
field if it doesn't span multiple lines and either use_selection is true or there's nothing in
the search field. The given search text is used instead, if provided

**Ctrl-Shift-F3**: **search-sel-backward** - Search backward using current selection 

**Ctrl-Shift-F5**: **debug-stop** - Pause debug at current program counter (press Alt to pause all debug processes)

**Ctrl-Shift-F6**: **debug-all-tests** - Debug all the tests in testing panel. 

**Ctrl-Shift-F7**: **debug-current-tests** - Runs the current test or tests, if possible.  The current tests are
determined by the current position in the active view. 

**Ctrl-Shift-F8**: **start-select-rectangle** - Turn on auto-select rectangle mode

**Ctrl-Shift-F9**: Multiple commands; first available is executed:

  * **break-disable-all** - Disable all breakpoints

  * **break-enable-all** - Enable all breakpoints


**Ctrl-Shift-G**: **search-backward** - Search again using the search manager's current settings
in backward direction 

**Ctrl-Shift-H**: **batch-replace** - Display search and replace in files tool. 

**Ctrl-Shift-Home**: **start-of-document-extend** - Move cursor to start of document, adjusting the selection 
range to new position 

**Ctrl-Shift-I**: **add-current-file-to-project** - Add the frontmost currently open file to project 

**Ctrl-Shift-L**: **swap-lines** - Swap the line at start of current selection with the line that follows it,
or the preceding line if previous is True.

**Ctrl-Shift-Left**: **backward-word-extend** - Action varies according to focus:  *Focused Editor Commands*: Move cursor backward one word, adjusting the selection range to new
position. Optionally, provide a string that contains the delimiters to
define which characters are part of a word. Gravity may be "start" or
"end" to indicate whether cursor is placed at start or end of the word.; *Toolbar Search Commands*: Move backward one word, extending the selection

**Ctrl-Shift-O**: **open-from-project** - Open document from the project via the Open From Project dialog.
The given fragment is used as the initial fragment filter and if it
is None, the selected text or the symbol under the cursor is used.
If skip_if_unique is true, the file is opened without the dialog being
displayed if only one filename matches the fragment. 

**Ctrl-Shift-P**: **find-symbol-in-project** - Allow user to visit point of definition of a source symbol in the 
any file in the project by typing a fragment of the name

**Ctrl-Shift-Page_down**: **forward-page-extend** - Move cursor forward one page, adjusting the selection 
range to new position 

**Ctrl-Shift-Page_up**: **backward-page-extend** - Move cursor backward one page, adjusting the selection 
range to new position 

**Ctrl-Shift-R**: **batch-replace** - Display search and replace in files tool. 

**Ctrl-Shift-Right**: **forward-word-extend** - Action varies according to focus:  *Focused Editor Commands*: Move cursor forward one word, adjusting the selection range to new
position. Optionally, provide a string that contains the delimiters to
define which characters are part of a word. Gravity may be "start" or
"end" to indicate whether cursor is placed at start or end of the word.; *Toolbar Search Commands*: Move forward one word, extending the selection

**Ctrl-Shift-S**: **save-as** - Save active document to a new file

**Ctrl-Shift-T**: **find-symbol** - Allow user to visit point of definition of a source symbol in the 
current editor context by typing a fragment of the name

**Ctrl-Shift-Tab**: **begin-visited-document-cycle(move_back=False)** - Start moving between documents in the order they were visited.  Starts
modal key interaction that ends when a key other than tab is seen or ctrl
is released. 

**Ctrl-Shift-U**: **isearch-backward** - Action varies according to focus:  *Document Viewer Commands*: Initiate incremental mini-search backward from the cursor position,
optionally entering the given search string.; *Focused Editor Commands*: Initiate incremental mini-search backward from the cursor position,
optionally entering the given search string 

**Ctrl-Shift-Up**: **move-line-up** - Move the current line or lines up one line, optionally
indenting to match the new position

**Ctrl-Shift-V**: **duplicate-line** - Duplicate the current line or lines. Places the duplicate on the line
following the selection if pos is 'below' or before the selection if it is
'above'.

**Ctrl-Shift-Y**: **duplicate-line-above** - Duplicate the current line or lines above the selection.

**Ctrl-Shift-Z**: **redo** - Redo last action 

**Ctrl-Slash**: **comment-out-region** - Comment out the selected region. The style of commenting can be controlled with the
style argument: 'indented' uses the default comment style indented at end of leading
white space, 'block' uses a block comment in column zero, and 'block-indented' uses a
block comment in the column determined by the least indented line.

Append '-pep8' to the style to conform to PEP 8 comment format rules (adding a space
after the comment character) in Python files.  This option is ignored in non-Python
files.
  
If not given, the style configured with the Editor / Block Comment Style preference is
used. Each call adds a level of commenting.

**Ctrl-Space**: **show-autocompleter** - Show the auto-completer for current cursor position

**Ctrl-T**: **forward-tab** - Action varies according to focus:  *Focused Editor Commands*: Place a tab character at the current cursor position ; *Search Tool Commands*: Place a forward tab at the current cursor position in search or replace
string

**Ctrl-Tab**: **begin-visited-document-cycle(move_back=True)** - Start moving between documents in the order they were visited.  Starts
modal key interaction that ends when a key other than tab is seen or ctrl
is released. 

**Ctrl-U**: **isearch-forward** - Action varies according to focus:  *Document Viewer Commands*: Initiate incremental mini-search forward from the cursor position,
optionally entering the given search string.; *Focused Editor Commands*: Initiate incremental mini-search forward from the cursor position,
optionally entering the given search string 

**Ctrl-Underscore**: **zoom-reset** - Action varies according to focus:  *Current Editor Commands*: Reset font zoom factor back to zero; *Document Viewer Commands*: Reset documentation font size to default

**Ctrl-Up**: **select-more** - Select more code on either the current line or larger multi-line
blocks. 

**Ctrl-V**: **paste** - Action varies according to focus:  *Focused Editor Commands*: Paste text from clipboard ; *Search Tool Commands*: Paste text from clipboard ; *Toolbar Search Commands*: Paste from clipboard 

**Ctrl-W**: **close** - Action varies according to focus:  *Application Control Commands*: Close active document.  Abandon any changes when ignore_changes is
True.  Close empty windows when close_window is true and quit if all
document windows closed when can_quit is true.; *Open Files Tool Commands*: Close the currently selected items in the Open Files tool

**Ctrl-X**: **cut** - Action varies according to focus:  *Focused Editor Commands*: Cut selected text ; *Search Tool Commands*: Cut selected text ; *Toolbar Search Commands*: Cut selection 

**Ctrl-Y**: **redo** - Redo last action 

**Ctrl-Z**: **undo** - Undo last action 

**Delete**: **forward-delete-char** - Action varies according to focus:  *Focused Editor Commands*: Delete one character in front of the cursor ; *Toolbar Search Commands*: Delete character in front of the cursor

**Down**: **next-line** - Move to screen next line, optionally repositioning character within
line: 'same' to leave in same horizontal position, 'start' at start, 'end'
at end, or 'fnb' for first non-blank char.

**End**: **end-of-line** - Action varies according to focus:  *Focused Editor Commands*: Move to end of current line; *Toolbar Search Commands*: Move to the end of the toolbar search entry

**Escape**: **exit-visual-mode** - Exit visual mode and return back to default mode

**F1**: Multiple commands; first available is executed:

  * **show-horizontal-tools** - Show the horizontal tool area

  * **minimize-horizontal-tools** - Minimize the horizontal tool area


**F11**: **frame-up** - Move up the current debug stack

**F12**: **frame-down** - Move down the current debug stack

**F2**: Multiple commands; first available is executed:

  * **show-vertical-tools** - Show the vertical tool area

  * **minimize-vertical-tools** - Minimize the vertical tool area


**F3**: **search-forward** - Search again using the search manager's current settings
in forward direction 

**F4**: **goto-selected-symbol-defn** - Goto the definition of the selected source symbol.  If other_split is
true, the definition will be displayed if a split other than the current
split; if other_split is false, it will be displayed in the current editor;
if other_split is not specified or None, the split to be used is determined
by the Split Reuse Policy preference value. 

**F5**: **debug-continue** - Start or continue debugging to next breakpoint or exception (press Alt to continue all paused debug processes)

**F6**: **step-over-statement** - Step over current statement

**F7**: **step-into** - Step into current execution point, or start debugging at first line

**F8**: **step-out** - Step out of the current function or method

**F9**: Multiple commands; first available is executed:

  * **break-set** - Set a new regular breakpoint on current line

  * **break-clear** - Clear the breakpoint on the current line


**Forward-button-click**: **visit-history-next** - Move forward in history to next visited editor position

**Home**: **beginning-of-line-text** - Move to end of the leading white space, if any, on the current line.
If toggle is True, moves to the beginning of the line if already at the
end of the leading white space (and vice versa).

**Insert**: **toggle-overtype** - Toggle status of overtyping mode 

**Iso_left_tab**: **backward-tab** - Outdent line at current position 

**Left**: **backward-char** - Action varies according to focus:  *Focused Editor Commands*: Move cursor backward one character ; *Toolbar Search Commands*: Move backward one character

**Next**: **forward-page-extend** - Move cursor forward one page, adjusting the selection 
range to new position 

**Page_down**: **forward-page** - Move cursor forward one page 

**Page_up**: **backward-page** - Move cursor backward one page 

**Prior**: **backward-page-extend** - Move cursor backward one page, adjusting the selection 
range to new position 

**Release-Shift-Space**: **debug-hide-value-tips** - Hide all the debug value tooltips previously shown with debug_show_value_tips()

**Return**: **new-line** - Place a new line at the current cursor position.  Override the auto-indent
preference by setting auto_indent to 'never' to avoid indent, 'always' to
auto-indent, and 'blank-only' to auto-indent only on blank lines.

**Right**: **forward-char** - Action varies according to focus:  *Focused Editor Commands*: Move cursor forward one character ; *Toolbar Search Commands*: Move forward one character

**Shift-Backspace**: **backward-delete-char** - Action varies according to focus:  *Focused Editor Commands*: Delete one character behind the cursor, or the current selection
if not empty. ; *Toolbar Search Commands*: Delete character behind the cursor

**Shift-Delete**: **cut** - Action varies according to focus:  *Focused Editor Commands*: Cut selected text ; *Search Tool Commands*: Cut selected text ; *Toolbar Search Commands*: Cut selection 

**Shift-Down**: **next-line-extend** - Move to next screen line, adjusting the selection range to new
position, optionally repositioning character within line: same' to leave
in same horizontal position, 'start' at start, 'end' at end, 'fnb' for
first non-blank char, or 'xcode' to simulate XCode style Shift-Alt line
selection.

**Shift-End**: **end-of-line-extend** - Action varies according to focus:  *Focused Editor Commands*: Move to end of current line, adjusting the selection range 
to new position ; *Toolbar Search Commands*: Move to the end of the toolbar search entry, extending the selection

**Shift-F1**: **move-focus** - Move the keyboard focus forward within the Window to the next editable
area

**Shift-F11**: **frame-show** - Show the position (thread and stack frame) where the debugger originally
stopped

**Shift-F2**: Multiple commands; first available is executed:

  * **enter-fullscreen** - Hide both the vertical and horizontal tool areas and toolbar, saving previous
    state so it can be restored later with exit_fullscreen

  * **exit-fullscreen** - Restore previous non-fullscreen state of all tools and tool bar


**Shift-F3**: **search-backward** - Search again using the search manager's current settings
in backward direction 

**Shift-F4**: **find-points-of-use** - Find points of use for a symbol.  The symbol defaults to the active
selection.  Finds points of use in the file the symbol is located and in
project files by default. 

**Shift-F5**: **debug-file** - Start debugging the current file (rather than the main entry point)

**Shift-F6**: **run-all-tests** - Runs all the tests in testing panel. 

**Shift-F7**: **run-current-tests** - Runs the current test or tests, if possible.  The current tests are
determined by the current position in the active view.  The tests are
debugged when debug is True.

**Shift-F8**: **start-select-char** - Turn on auto-select mode character by character

**Shift-F9**: Multiple commands; first available is executed:

  * **break-set-disabled** - Set a disabled breakpoint on the current line

  * **break-enable** - Enable the breakpoint on the current line

  * **break-disable** - Disable the breakpoint on current line


**Shift-Home**: **beginning-of-line-text-extend** - Move to end of the leading white space, if any, on the current line,
adjusting the selection range to the new position.  If toggle is True,
moves to the beginning of the line if already at the end of the leading
white space (and vice versa).

**Shift-Insert**: **paste** - Action varies according to focus:  *Focused Editor Commands*: Paste text from clipboard ; *Search Tool Commands*: Paste text from clipboard ; *Toolbar Search Commands*: Paste from clipboard 

**Shift-Left**: **backward-char-extend** - Action varies according to focus:  *Focused Editor Commands*: Move cursor backward one character, adjusting the selection 
range to new position ; *Toolbar Search Commands*: Move backward one character, extending the selection

**Shift-Page_down**: **forward-page-extend** - Move cursor forward one page, adjusting the selection 
range to new position 

**Shift-Page_up**: **backward-page-extend** - Move cursor backward one page, adjusting the selection 
range to new position 

**Shift-Return**: **new-line-before** - Place a new line before the current line 

**Shift-Right**: **forward-char-extend** - Action varies according to focus:  *Focused Editor Commands*: Move cursor forward one character, adjusting the selection 
range to new position ; *Toolbar Search Commands*: Move forward one character, extending the selection

**Shift-Space**: Multiple commands; first available is executed:

  * **debug-show-value-tips(release_toggle=True)** - Show tooltips on all visible editors indicating the current value of
    all visible symbols.  The value of release_toggle controls whether this
    command is available if the tips are already shown; this can be used
    to prevent execution of fallback commands on a key binding while the
    tips are already visible, if the key is pressed again or reported in
    key repeat events while the key is held down.

  * **send-keys(keys=" ")** - Send one or more keys to the editor. Send a string to enter each key in the string,
    or a list of strings and/or (mod, key) tuples where mod is a string containing any of
    case insensitive 'shift', 'ctrl', or 'alt'.  Valid examples::
    
      "testme"
      "TestMe"
      ["test", ('Alt', 'X'), "m"]
      [('ctrl-Shift', 'X'), ('shift','E'),]


**Shift-Tab**: **backward-tab** - Outdent line at current position 

**Shift-Up**: **previous-line-extend** - Move to previous screen line, adjusting the selection range to new
position, optionally repositioning character within line: same' to leave
in same horizontal position, 'start' at start, 'end' at end, 'fnb' for
first non-blank char, or 'xcode' to simulate XCode style Shift-Alt line
selection.

**Tab**: **tab-key** - Implement the tab key, the action of which is configurable by preference

**Up**: **previous-line** - Move to previous screen line, optionally repositioning character
within line: same' to leave in same horizontal position, 'start' at start,
'end' at end, or 'fnb' for first non-blank char.
