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

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

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


**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-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

**Alt-Down**: **next-line(cursor="end")** - 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.

**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-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-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

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

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

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

**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**: **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

**Alt-Shift-Down**: **next-line-extend(cursor="xcode")** - 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.

**Alt-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

**Alt-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

**Alt-Shift-Up**: **previous-line-extend(cursor="xcode")** - 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.

**Alt-Up**: **previous-line(cursor="start")** - 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.

**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

**Command-0**: **toggle-vertical-tools** - Show or minimize the vertical tool area

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

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

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

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

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

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

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

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

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

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

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

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

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

**Command-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.

**Command-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.

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

**Command-Alt-0**: **toggle-vertical-tools** - Show or minimize the vertical tool area

**Command-Alt-Bracketleft**: **move-line-up** - Move the current line or lines up one line, optionally
indenting to match the new position

**Command-Alt-Bracketright**: **move-line-down** - Move the current line or lines up down line, optionally
indenting to match the new position

**Command-Alt-F**: **replace** - Bring up the search manager in replace mode. 

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

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

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

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

**Command-Alt-Question**: **show-document** - Show the given documentation section

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

**Command-Alt-Shift-F**: **batch-replace** - Display search and replace in files tool. 

**Command-Apostrophe**: **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.

**Command-Asterisk**: **fold-expand-all-current** - Expand the current fold point completely 

**Command-B**: **run-build-command** - Execute the build command defined in the project, if any

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

**Command-Backspace**: **delete-to-start-of-line** - Delete everything between the cursor and start of line

**Command-Braceleft**: **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.

**Command-Braceright**: **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.

**Command-Bracketleft**: **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.

**Command-Bracketright**: **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.

**Command-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 

**Command-Comma**: **show-preferences-gui** - Edit the preferences file using the preferences GUI, optionally
opening to the section that contains the given preference by name 

**Command-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. 

**Command-Down**: **end-of-document** - Move cursor to end of document 

**Command-E**: **search-sel-forward** - Search forward using current selection 

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

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

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

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

**Command-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

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

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

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

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

**Command-I**: **view-file-properties** - View project properties for a particular file (current file if none
is given)

**Command-J**: **focus-current-editor** - Move focus back to the current editor, out of any tool, if there is
an active editor.

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

**Command-Left**: **beginning-of-line** - Action varies according to focus:  *Focused Editor Commands*: Move to beginning of current line. When toggle is True, moves to the
end of the leading white space if already at the beginning of the line
(and vice versa).; *Toolbar Search Commands*: Move to the beginning of the toolbar search entry

**Command-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.

**Command-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.

**Command-Minus**: **fold-collapse-all-current** - Collapse the current fold point completely 

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

**Command-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.

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

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

**Command-Period**: **debug-stop** - Pause debug at current program counter (press Alt to pause all debug processes)

**Command-Plus**: **fold-expand-more-current** - Expand the current fold point one more level 

**Command-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.

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

**Command-Question**: **show-document** - Show the given documentation section

**Command-Quotedbl**: **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.

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

**Command-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.

**Command-Right**: **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

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

**Command-Semicolon**: **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.

**Command-Shift-B**: **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.

**Command-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. 

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

**Command-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

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

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

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

**Command-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. 

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

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

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

**Command-Shift-K**: **show-bookmarks** - Show a list of all currently defined bookmarks

**Command-Shift-Left**: **beginning-of-line-extend** - Action varies according to focus:  *Focused Editor Commands*: Move to beginning of current line, adjusting the selection range to
the new position. When toggle is True, moves to the end of the leading
white space if already at the beginning of the line (and vice versa).; *Toolbar Search Commands*: Move to the beginning of the toolbar search entry, extending the selection

**Command-Shift-M**: Multiple commands; first available is executed:

  * **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.

  * **stop-kbd-macro** - Stop definition of a keyboard macro 


**Command-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. 

**Command-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

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

**Command-Shift-Right**: **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

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

**Command-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

**Command-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 

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

**Command-Shift-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

**Command-Shift-Y**: **toggle-horizontal-tools** - Show or minimize the horizontal tool area

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

**Command-Slash**: **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.

**Command-T**: **new-file** - Create a new file 

**Command-U**: **run-all-tests** - Runs all the tests in testing panel. 

**Command-Underscore**: **fold-collapse-more-current** - Collapse the current fold point one more level 

**Command-Up**: **start-of-document** - Move cursor to start of document 

**Command-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 

**Command-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

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

**Command-Y**: **break-toggle** - Toggle breakpoint at current line (creates new regular bp when one is created)

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

**Ctrl-A**: **beginning-of-line** - Action varies according to focus:  *Focused Editor Commands*: Move to beginning of current line. When toggle is True, moves to the
end of the leading white space if already at the beginning of the line
(and vice versa).; *Toolbar Search Commands*: Move to the beginning of the toolbar search entry

**Ctrl-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

**Ctrl-Alt-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.

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

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

**Ctrl-Alt-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.

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

**Ctrl-Comma**: **visit-history-previous** - Move back in history to previous visited editor position

**Ctrl-Command-Alt-2**: **show-panel-snippets** - Not documented

**Ctrl-Command-Alt-Slash**: **show-panel-source-assistant** - Not documented

**Ctrl-Command-Asterisk**: **fold-expand-all** - Expand all fold points in the current file 

**Ctrl-Command-B**: **goto-bookmark** - Goto named bookmark

**Ctrl-Command-E**: **rename-symbol** - Rename currently selected symbol.  The new_name argument is used as the
default for the name field if specified.  Aternatively, the transform argument
may be set to camel-upper for UpperCamelCase, camel-lower for lowerCamelCase,
under-lower for under_scored_name, or under-upper for UNDER_SCORED_NAME.

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

**Ctrl-Command-Minus**: **fold-collapse-all** - Collapse all fold points in the current file 

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

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

**Ctrl-Command-Slash**: **fold-python-classes** - Fold up all Python classes but leave other fold points alone

**Ctrl-D**: **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

**Ctrl-Down**: **forward-page** - Move cursor forward one page 

**Ctrl-E**: **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

**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-F**: **forward-char** - Action varies according to focus:  *Focused Editor Commands*: Move cursor forward one character ; *Toolbar Search Commands*: Move forward one character

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

**Ctrl-H**: **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-I**: **indent-to-match** - Indent the current line or selected region to match indentation of 
preceding non-blank line.  Set toggle=True to indent instead of one
level higher if already at the matching position.

**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-K**: **kill-line** - Kill rest of line from cursor to end of line, and place
it into the clipboard with any other contiguously removed
lines.  End-of-line is removed only if there is nothing
between the cursor and the end of the line. 

**Ctrl-Left**: **backward-word(delimiters="_`~!@#$%^&\*()+-={}[]\\|;:\'\",.<>/? \t\r\n")** - 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-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**: **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.

**Ctrl-P**: **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.

**Ctrl-Period**: **visit-history-next** - Move forward in history to next visited editor position

**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-R**: **query-replace** - Initiate incremental mini-search query/replace from the cursor 
position. 

**Ctrl-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.

**Ctrl-Right**: **forward-word(delimiters="_`~!@#$%^&\*()+-={}[]\\|;:\'\",.<>/? \t\r\n")** - 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-Shift-Left**: **backward-word-extend(delimiters="_`~!@#$%^&\*()+-={}[]\\|;:\'\",.<>/? \t\r\n")** - 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-Right**: **forward-word-extend(delimiters="_`~!@#$%^&\*()+-={}[]\\|;:\'\",.<>/? \t\r\n")** - 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-Space**: Multiple commands; first available is executed:

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

  * **cancel-autocompleter**


**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-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**: **backward-page** - Move cursor backward one page 

**Ctrl-V**: **forward-page** - Move cursor forward one page 

**Ctrl-Y**: **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 

**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**: **scroll-to-end** - Scroll to the end of the text in the editor.  Set move_caret to control
whether the caret is moved.

**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**: **scroll-to-start** - Scroll to the top of the text in the editor.  Set move_caret to control
whether the the caret is moved.

**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

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

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

**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**: **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

**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-document-extend** - Move cursor to end of document, adjusting the selection 
range to new position 

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

**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**: **new-document-window** - Create a new document window with same documents and panels as in
the current document window (if any; otherwise empty with default panels)

**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-enable** - Enable the breakpoint on the current line

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


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

**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** - 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.

**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.
