Basic editing functions

KeyFunctionDescription
UnboundAbortAbort the current operation, e.g. incremental history search
UnboundAcceptAndGetNextAccept the current line and recall the next line from history after the current line finishes executing
EnterAcceptLineAccept the input or move to the next line if input is missing a closing token.
Shift+EnterAddLineMove the cursor to the next line without attempting to execute the input
BackspaceBackwardDeleteCharDelete the character before the cursor
Ctrl+hBackwardDeleteCharDelete the character before the cursor
Ctrl+HomeBackwardDeleteInputDelete text from the cursor to the start of the input
UnboundBackwardDeleteLineDelete text from the cursor to the start of the current logical line
UnboundBackwardDeleteWordDelete the previous word in the line.
UnboundBackwardKillInputMove the text from the cursor to the beginning of the input to the kill ring
UnboundBackwardKillLineMove the text from the start of the current logical line to the cursor to the kill ring
Ctrl+BackspaceBackwardKillWordMove the text from the start of the current or previous word to the cursor to the kill ring
Ctrl+wBackwardKillWordMove the text from the start of the current or previous word to the cursor to the kill ring
UnboundCancelLineAbort editing the current line and re-evaluate the prompt
UnboundCapitalizeWordFind the next word starting from the current position and then upcase the first character and downcase the remaining characters.
Ctrl+CCopyCopy selected region to the system clipboard. If no region is selected, copy the whole line
Ctrl+cCopyOrCancelLineEither copy selected text to the clipboard, or if no text is selected, cancel editing the line with CancelLine.
Ctrl+xCutDelete selected region placing deleted text in the system clipboard
DeleteDeleteCharDelete the character under the cursor
UnboundDeleteCharOrExitDelete the character under the cursor, or if the line is empty, exit the process.
UnboundDeleteEndOfBufferDelete the current logical line and up to the end of the multiline buffer
UnboundDeleteEndOfWordDelete to the end of the current word, as delimited by white space and common delimiters.
UnboundDeleteLineDeletes the current line.
UnboundDeleteLineToFirstCharDeletes from the first non blank character of the current logical line in a multiline buffer.
UnboundDeletePreviousLinesDeletes from the previous n logical lines in a multiline buffer to the current logical line included.
UnboundDeleteToEndDeletes from the cursor to the end of the line.
UnboundDeleteWordDeletes the current word.
UnboundDowncaseWordFind the next word starting from the current position and then make it lower case.
Ctrl+EndForwardDeleteInputDelete text from the cursor to the end of the input
UnboundForwardDeleteLineDelete text from the cursor to the end of the current logical line
Ctrl+EnterInsertLineAboveInserts a new empty line above the current line without attempting to execute the input
Shift+Ctrl+EnterInsertLineBelowInserts a new empty line below the current line without attempting to execute the input
UnboundInvertCaseInverts the case of the current character and advances the cursor.
UnboundKillLineMove the text from the cursor to the end of the input to the kill ring
UnboundKillRegionKill the text between the cursor and the mark
Alt+dKillWordMove the text from the cursor to the end of the current or next word to the kill ring
Ctrl+DeleteKillWordMove the text from the cursor to the end of the current or next word to the kill ring
Ctrl+vPastePaste text from the system clipboard
Shift+InsertPastePaste text from the system clipboard
UnboundPasteAfterWrite the contents of the local clipboard after the cursor.
UnboundPasteBeforeWrite the contents of the local clipboard before the cursor.
UnboundPrependAndAcceptInserts the entered character at the beginning and accepts the line.
Ctrl+yRedoRedo an undo
UnboundRepeatLastCommandRepeats the last modification command.
EscapeRevertLineEquivalent to undo all edits (clears the line except lines imported from history)
UnboundShellBackwardKillWordMove the text from the cursor to the start of the current or previous token to the kill ring
UnboundShellKillWordMove the text from the cursor to the end of the current or next token to the kill ring
UnboundSwapCharactersSwap the current character with the character before it.
Ctrl+zUndoUndo a previous edit
UnboundUndoAllUndoes all commands for this line.
UnboundUnixWordRuboutMove the text from the cursor to the start of the current or previous whitespace delimited word to the kill ring
UnboundUpcaseWordFind the next word starting from the current position and then make it upper case.
UnboundValidateAndAcceptLineAccept the input or move to the next line if input is missing a closing token. If there are other parse errors, unresolved commands, or incorrect parameters, show the error and continue editing.
UnboundViAcceptLineAccept the line and switch to Vi's insert mode.
UnboundViAcceptLineOrExitIf the line is empty, exit, otherwise accept the line as input.
UnboundViAppendLineAppends a new multi-line edit mode line to the current line.
UnboundViBackwardDeleteGlobDelete backward to the beginning of the previous word, as delimited by white space.
UnboundViBackwardGlobMove the cursor to the beginning of the previous word, as delimited by white space.
UnboundViDeleteBraceDeletes all characters between the cursor and the matching brace.
UnboundViDeleteEndOfGlobDelete to the end of this word, as delimited by white space.
UnboundViDeleteGlobDelete the current word, as delimited by white space.
UnboundViDeleteToBeforeCharDeletes until given character.
UnboundViDeleteToBeforeCharBackwardDeletes until given character.
UnboundViDeleteToCharDeletes until given character.
UnboundViDeleteToCharBackwardDeletes backwards until given character.
UnboundViInsertAtBeginingMoves the cursor to the beginning of the line and switches to insert mode.
UnboundViInsertAtEndMoves the cursor to the end of the line and switches to insert mode.
UnboundViInsertLineInserts a new multi-line edit mode line in front of the current line.
UnboundViInsertWithAppendSwitch to insert mode, appending at the current line position.
UnboundViInsertWithDeleteDeletes the current character and switches to insert mode.
UnboundViJoinLinesJoins the current multi-line edit mode line with the next.
UnboundViReplaceLineRepace the current line with the next set of characters typed.
UnboundViReplaceToBeforeCharReplaces until given character.
UnboundViReplaceToBeforeCharBackwardReplaces until given character.
UnboundViReplaceToCharDeletes until given character.
UnboundViReplaceToCharBackwardReplaces until given character.
UnboundViYankBeginningOfLinePlace the characters before the cursor into the local clipboard.
UnboundViYankEndOfGlobPlace the characters from the cursor to the end of the next white space delimited word into the local clipboard.
UnboundViYankEndOfWordPlace the characters from the cursor to the end of the next word, as delimited by white space and common delimiters, into the local clipboard.
UnboundViYankLeftPlace the character to the left of the cursor into the local clipboard.
UnboundViYankLinePlace all characters in the current line into the local clipboard.
UnboundViYankNextGlobPlace all characters from the cursor to the end of the word, as delimited by white space, into the local clipboard.
UnboundViYankNextWordPlace all characters from the cursor to the end of the word, as delimited by white space and common delimiters, into the local clipboard.
UnboundViYankPercentPlace all characters between the matching brace and the cursor into the local clipboard.
UnboundViYankPreviousGlobPlace all characters from before the cursor to the beginning of the previous word, as delimited by white space, into the local clipboard.
UnboundViYankPreviousWordPlace all characters from before the cursor to the beginning of the previous word, as delimited by white space and common delimiters, into the local clipboard.
UnboundViYankRightPlace the character at the cursor into the local clipboard.
UnboundViYankToEndOfLinePlace all characters at and after the cursor into the local clipboard.
UnboundViYankToFirstCharPlace all characters before the cursor and to the 1st non-white space character into the local clipboard.
UnboundYankCopy the text from the current kill ring position to the input
Alt+.YankLastArgCopy the text of the last argument to the input
UnboundYankNthArgCopy the text of the first argument to the input
UnboundYankPopReplace the previously yanked text with the text from the next kill ring position

Cursor movement functions

KeyFunctionDescription
LeftArrowBackwardCharMove the cursor back one character
Ctrl+LeftArrowBackwardWordMove the cursor to the beginning of the current or previous word
HomeBeginningOfLineMove the cursor to the beginning of the line
EndEndOfLineMove the cursor to the end of the line
RightArrowForwardCharMove the cursor forward one character
UnboundForwardWordMove the cursor forward to the end of the current word, or if between words, to the end of the next word.
Ctrl+]GotoBraceGo to matching brace
UnboundGotoColumnMoves the cursor to the prescribed column.
UnboundGotoFirstNonBlankOfLinePositions the cursor at the first non-blank character.
UnboundMoveToEndOfLineMove to the end of the line.
UnboundNextLineMove the cursor to the next line if the input has multiple lines.
Ctrl+RightArrowNextWordMove the cursor forward to the start of the next word
UnboundNextWordEndMoves the cursor forward to the end of the next word.
UnboundPreviousLineMove the cursor to the previous line if the input has multiple lines.
UnboundShellBackwardWordMove the cursor to the beginning of the current or previous token or start of the line
UnboundShellForwardWordMove the cursor to the beginning of the next token or end of line
UnboundShellNextWordMove the cursor to the end of the current token
UnboundViBackwardCharMove the cursor back one character in the Vi edit mode.
UnboundViBackwardWordDelete backward to the beginning of the previous word, as delimited by white space and common delimiters, and enter insert mode.
UnboundViEndOfGlobMove the cursor to the end this word, as delimited by white space.
UnboundViEndOfPreviousGlobMoves to the end of the previous word, using only white space as a word delimiter.
UnboundViForwardCharMove the cursor forward one character in the Vi edit mode.
UnboundViGotoBraceMove the cursor to the matching brace.
UnboundViNextGlobMove the cursor to the beginning of the next word, as delimited by white space.
UnboundViNextWordMove the cursor to the beginning of the next word, as delimited by white space and common delimiters.

History functions

KeyFunctionDescription
UnboundBeginningOfHistoryMove to the first item in the history
Alt+F7ClearHistoryRemove all items from the command line history (not PowerShell history)
UnboundEndOfHistoryMove to the last item (the current input) in the history
Ctrl+sForwardSearchHistorySearch history forward interactively
F8HistorySearchBackwardSearch for the previous item in the history that starts with the current input - like PreviousHistory if the input is empty
Shift+F8HistorySearchForwardSearch for the next item in the history that starts with the current input - like NextHistory if the input is empty
DownArrowNextHistoryReplace the input with the next item in the history
UpArrowPreviousHistoryReplace the input with the previous item in the history
UnboundReverseSearchHistorySearch history backwards interactively
UnboundViSearchHistoryBackwardStarts a new search backward in the history.

Completion functions

KeyFunctionDescription
UnboundCompleteComplete the input if there is a single completion, otherwise complete the input with common prefix for all completions. Show possible completions if pressed a second time.
Ctrl+@MenuCompleteComplete the input if there is a single completion, otherwise complete the input by selecting from a menu of possible completions.
UnboundPossibleCompletionsDisplay the possible completions without changing the input
UnboundTabCompleteNextComplete the input using the next completion
Shift+TabTabCompletePreviousComplete the input using the previous completion
UnboundViTabCompleteNextInvokes TabCompleteNext after doing some vi-specific clean up.
UnboundViTabCompletePreviousInvokes TabCompletePrevious after doing some vi-specific clean up.

Prediction functions

KeyFunctionDescription
Ctrl+gAcceptNextSuggestionWordAccept the next word of the inline or selected suggestion
UnboundAcceptSuggestionAccept the current inline or selected suggestion
UnboundNextSuggestionSelect the next suggestion item shown in the list view.
UnboundPreviousSuggestionSelect the previous suggestion item shown in the list view.
F4ShowFullPredictionTooltipShow the full tooltip of the selected list-view item in the terminal's alternate screen buffer.
F2SwitchPredictionViewSwitch between the inline and list prediction views.

Miscellaneous functions

KeyFunctionDescription
UnboundCaptureScreenAllows you to select multiple lines from the console using Shift+UpArrow/DownArrow and copy the selected lines to clipboard by pressing Enter.
Ctrl+lClearScreenClear the screen and redraw the current line at the top of the screen
Alt+0DigitArgumentStart or accumulate a numeric argument to other functions
Alt+1DigitArgumentStart or accumulate a numeric argument to other functions
Alt+2DigitArgumentStart or accumulate a numeric argument to other functions
Alt+3DigitArgumentStart or accumulate a numeric argument to other functions
Alt+4DigitArgumentStart or accumulate a numeric argument to other functions
Alt+5DigitArgumentStart or accumulate a numeric argument to other functions
Alt+6DigitArgumentStart or accumulate a numeric argument to other functions
Alt+7DigitArgumentStart or accumulate a numeric argument to other functions
Alt+8DigitArgumentStart or accumulate a numeric argument to other functions
Alt+9DigitArgumentStart or accumulate a numeric argument to other functions
Alt+-DigitArgumentStart or accumulate a numeric argument to other functions
UnboundInvokePromptErases the current prompt and calls the prompt function to redisplay the prompt
PageDownScrollDisplayDownScroll the display down one screen
Ctrl+PageDownScrollDisplayDownLineScroll the display down one line
UnboundScrollDisplayToCursorScroll the display to the cursor
UnboundScrollDisplayTopScroll the display to the top
PageUpScrollDisplayUpScroll the display up one screen
Ctrl+PageUpScrollDisplayUpLineScroll the display up one line
F1ShowCommandHelpShows help for the command at the cursor in an alternate screen buffer.
Ctrl+Alt+?ShowKeyBindingsShow all key bindings
Alt+hShowParameterHelpShows help for the parameter at the cursor.
UnboundViCommandModeSwitch to VI's command mode.
UnboundViDigitArgumentInChordHandles the processing of a number argument after the first key of a chord.
UnboundViEditVisuallyInvokes the console compatible editor specified by $env:VISUAL or $env:EDITOR on the current command line.
UnboundViExitExit the shell.
UnboundViInsertModeSwitches to insert mode.
Alt+?WhatIsKeyShow the key binding for the next chord entered

Selection functions

KeyFunctionDescription
UnboundExchangePointAndMarkMark the location of the cursor and move the cursor to the position of the previous m
ark
Ctrl+aSelectAllSelect the entire line. Moves the cursor to the end of the line
Shift+LeftArrowSelectBackwardCharAdjust the current selection to include the previous character
Shift+HomeSelectBackwardsLineAdjust the current selection to include from the cursor to the start of the line
Shift+Ctrl+LeftArrowSelectBackwardWordAdjust the current selection to include the previous word
Alt+aSelectCommandArgumentMake visual selection of the command arguments.
Shift+RightArrowSelectForwardCharAdjust the current selection to include the next character
UnboundSelectForwardWordAdjust the current selection to include the next word using ForwardWord
Shift+EndSelectLineAdjust the current selection to include from the cursor to the end of the line
Shift+Ctrl+RightArrowSelectNextWordAdjust the current selection to include the next word
UnboundSelectShellBackwardWordAdjust the current selection to include the previous word using ShellBackwardWord
UnboundSelectShellForwardWordAdjust the current selection to include the next word using ShellForwardWord
UnboundSelectShellNextWordAdjust the current selection to include the next word using ShellNextWord
UnboundSetMarkMark the location of the cursor

Search functions

KeyFunctionDescription
F3CharacterSearchRead a character and move the cursor to the next occurrence of that character
Shift+F3CharacterSearchBackwardRead a character and move the cursor to the previous occurrence of that character
UnboundRepeatLastCharSearchRepeat the last recorded character search.
UnboundRepeatLastCharSearchBackwardsRepeat the last recorded character search in the opposite direction.
UnboundRepeatSearchRepeat the last search.
UnboundRepeatSearchBackwardRepeat the last search, but in the opposite direction.
UnboundSearchCharMove to the next occurrence of the specified character.
UnboundSearchCharBackwardMove to the previous occurrence of the specified character.
UnboundSearchCharBackwardWithBackoffMove to the previous occurrence of the specified character and then forward one character.
UnboundSearchCharWithBackoffMove to he next occurrence of the specified character and then back one character.
UnboundSearchForwardPrompts for a search string and initiates a search upon AcceptLine.

User defined functions

KeyFunctionDescription
TabCustomActionUser defined action
Ctrl+qCustomActionfzf gets path using fd
Ctrl+fCustomActionfzf gets path using rg
Ctrl+tFzf Provider SelectRun fzf for current provider based on current token
Ctrl+rFzf Reverse History SelectRun fzf to search through PSReadline history
Alt+cFzf Set LocationRun fzf to select directory to set current location
Ctrl+bIntelliShell BookmarkBookmark current command
Ctrl+SpacebarIntelliShell SearchSearch for a bookmarked command
Ctrl+hIntelliShell LabelTrigger label replace for current command

To learn

KeyFunctionDescription
Alt+aSelectCommandArgumentMake visual selection of the command arguments.
Alt+?WhatIsKeyShow the key binding for the next chord entered
Ctrl+Alt+?ShowKeyBindingsShow all key bindings
Alt+hShowParameterHelpShows help for the parameter at the cursor.
Alt+0..9DigitArgumentStart or accumulate a numeric argument to other functions
Alt+-DigitArgumentStart or accumulate a numeric argument to other functions
Ctrl+lClearScreenClear the screen and redraw the current line at the top of the screen
Shift+TabTabCompletePreviousComplete the input using the previous completion
Alt+F7ClearHistoryRemove all items from the command line history (not PowerShell history)
Ctrl+]GotoBraceGo to matching brace
Ctrl+wBackwardKillWordMove the text from the start of the current or previous word to the cursor to the kill ring