Keyboard Shortcuts

Keyboard shortcuts for the module viewer, and anywhere else you can edit code. These are mosly just copied from here: https://codemirror.net/doc/manual.html#commands

autocomplete Ctrl-Space (PC), Ctrl-Space (Mac)

Bring up the autocomplete widget.

search Ctrl-S (PC), Cmd-S (Mac)

Search the whole content of the editor.

selectAll Ctrl-A (PC), Cmd-A (Mac)

Select the whole content of the editor.

killLine Ctrl-K (Mac)

Emacs-style line killing. Deletes the part of the line after the cursor. If that consists only of whitespace, the newline at the end of the line is also deleted.

deleteLine Ctrl-D (PC), Cmd-D (Mac)

Deletes the whole line under the cursor, including newline at the end.

delWrappedLineLeft Cmd-Backspace (Mac)

Delete the part of the line from the left side of the visual line the cursor is on to the cursor.

delWrappedLineRight Cmd-Delete (Mac)

Delete the part of the line from the cursor to the right side of the visual line the cursor is on.

undo Ctrl-Z (PC), Cmd-Z (Mac)

Undo the last change.

redo Ctrl-Y (PC), Shift-Cmd-Z (Mac), Cmd-Y (Mac)

Redo the last undone change.

undoSelection Ctrl-U (PC), Cmd-U (Mac)

Undo the last change to the selection, or if there are no selection-only changes at the top of the history, undo the last change.

redoSelection Alt-U (PC), Shift-Cmd-U (Mac)

Redo the last change to the selection, or the last text change if no selection changes remain.

goDocStart Ctrl-Home (PC), Cmd-Up (Mac), Cmd-Home (Mac)

Move the cursor to the start of the document.

goDocEnd Ctrl-End (PC), Cmd-End (Mac), Cmd-Down (Mac)

Move the cursor to the end of the document.

goLineStart Alt-Left (PC), Ctrl-A (Mac)

Move the cursor to the start of the line.

goLineStartSmartHome

Move to the start of the text on the line, or if we are already there, to the actual start of the line (including whitespace).

goLineEnd Alt-Right (PC), Ctrl-E (Mac)

Move the cursor to the end of the line.

goLineRight Cmd-Right (Mac)

Move the cursor to the right side of the visual line it is on.

goLineLeft Cmd-Left (Mac)

Move the cursor to the left side of the visual line it is on. If this line is wrapped, that may not be the start of the line.

goLineUpUp ` :kbd:`Ctrl-P (Mac)

Move the cursor up one line.

goLineDownDown, ` :kbd:`Ctrl-N (Mac)

Move down one line.

goPageUpPageUp, Shift- Ctrl-V (Mac)

Move the cursor up one screen, and scroll up by the same distance.

goPageDownPageDown, ` :kbd:`Ctrl-V (Mac)

Move the cursor down one screen, and scroll down by the same distance.

goCharLeftLeft, ` :kbd:`Ctrl-B (Mac)

Move the cursor one character left, going to the previous line when hitting the start of line.

goCharRightRight, ` :kbd:`Ctrl-F (Mac)

Move the cursor one character right, going to the next line when hitting the end of line.

goColumnLeft

Move the cursor one character left, but don’t cross line boundaries.

goColumnRight

Move the cursor one character right, don’t cross line boundaries.

goWordLeft Alt-B (Mac)

Move the cursor to the start of the previous word.

goWordRight Alt-F (Mac)

Move the cursor to the end of the next word.

goGroupLeft Ctrl-Left (PC), Alt-Left (Mac)

Move to the left of the group before the cursor. A group is a stretch of word characters, a stretch of punctuation characters, a newline, or a stretch of more than one whitespace character.

goGroupRight Ctrl-Right (PC), Alt-Right (Mac)

Move to the right of the group after the cursor (see above).

delCharBeforeShift-Backspace, ` :kbd:`Ctrl-H (Mac)

Delete the character before the cursor.

delCharAfterDelete, ` :kbd:`Ctrl-D (Mac)

Delete the character after the cursor.

delWordBefore Alt-Backspace (Mac)

Delete up to the start of the word before the cursor.

delWordAfter Alt-D (Mac)

Delete up to the end of the word after the cursor.

delGroupBefore Ctrl-Backspace (PC), Alt-Backspace (Mac)

Delete to the left of the group before the cursor.

delGroupAfter Ctrl-Delete (PC), Ctrl-Alt-Backspace (Mac), Alt-Delete(Mac)

Delete to the start of the group after the cursor.

indentAutoShift-Tab

Auto-indent the current line or selection.

indentMore Ctrl-] (PC), Cmd-] (Mac)

Indent the current line or selection by one indent unit.

indentLess Ctrl-[ (PC), Cmd-[ (Mac)

Dedent the current line or selection by one indent unit.

insertTab

Insert a tab character at the cursor.

insertSoftTab

Insert the amount of spaces that match the width a tab at the cursor position would have.

defaultTabTab

If something is selected, indent it by one indent unit. If nothing is selected, insert a tab character.

transposeChars Ctrl-T (Mac)

Swap the characters before and after the cursor.

newlineAndIndentEnter

Insert a newline and auto-indent the new line.

toggleOverwriteInsert

Flip the overwrite flag.

save Ctrl-S (PC), Cmd-S (Mac)

Not defined by the core library, only referred to in key maps. Intended to provide an easy way for user code to define a save command.

find Ctrl-F (PC), Cmd-F (Mac)

findNext Ctrl-G (PC), Cmd-G (Mac)

findPrev Shift-Ctrl-G (PC), Shift-Cmd-G (Mac)

replace Shift-Ctrl-F (PC), Cmd-Alt-F (Mac)

replaceAll Shift-Ctrl-R (PC), Shift-Cmd-Alt-F (Mac)

Not defined by the core library, but defined in the search addon (or custom client addons).