Nushell#
The structured-data shell (nu). Nushell uses Reedline
(its own Rust line editor) with a menu-driven model: a single key
opens a completion menu, history menu, or help menu, and arrow
keys / Enter navigate it. Many bindings overlap with the
readline conventions, but the menu model is the distinctive
piece.
Default edit mode is emacs; switch with $env.config.edit_mode
= "vi" in $nu.config-path. List active bindings with
keybindings list -m; list named events with
keybindings list -e; reset with keybindings default.
For startup files, $env.config keys, and plugin loading, see
Nushell.
Cursor Movement#
Key |
Action |
|---|---|
|
move to start of line |
|
move to end of line |
|
move back one character |
|
move forward one character |
|
move back one word |
|
move forward one word |
|
one character (or accept-next-suggestion-word on Right) |
|
start / end of line |
Editing#
Key |
Action |
|---|---|
|
delete character under cursor (EOF on empty line) |
|
delete character before cursor |
|
delete word forward |
|
delete word backward |
|
delete word backward (alphanumeric-aware) |
|
cut to end of line |
|
cut whole line |
|
paste from cut buffer |
|
transpose character with previous |
|
transpose word with previous |
|
uppercase word |
|
lowercase word |
|
capitalize word |
|
undo (Reedline; not SIGTSTP in nu) |
|
redo |
History#
Key |
Action |
|---|---|
|
previous history line |
|
next history line |
|
open searchable history menu |
|
insert last argument of previous command |
|
print full history |
|
filter history (nu-native) |
Process Control#
Key |
Action |
|---|---|
|
cancel current line / interrupt command |
|
send EOF; exit shell on empty line |
|
clear screen |
|
pause terminal output (XOFF) |
|
resume terminal output (XON) |
Vi Mode#
Enable with $env.config.edit_mode = "vi" in
$nu.config-path. Two main modes: insert and normal;
visual for selection.
Key |
Action |
|---|---|
|
enter normal mode |
|
insert / append at cursor / start / end |
|
move to start / first non-blank / end of line |
|
word forward / back / end |
|
find next / previous character |
|
delete character under cursor |
|
delete word / to end / whole line |
|
change word / to end / whole line |
|
yank word / to end / whole line |
|
paste after / before cursor |
|
undo |
|
enter visual (selection) mode |
|
previous / next history line (normal mode) |
Config and Discovery#
Command |
Action |
|---|---|
|
list every key (paginated) |
|
list with the modifier each requires |
|
list named edit / menu / motion events |
|
reset all bindings to defaults |
|
switch to vi mode (set in |
|
switch to emacs mode |
|
open the config file in |
|
regenerate default config |
|
declare custom bindings (table of name / modifier / keycode / mode / event) |
|
inline help for any command |
|
list terminal-driver shortcuts |