FISH_KEY_READER(1)

NAME
fish_key_reader - explore what characters keyboard keys send

SYNOPSIS
fish_key_reader [OPTIONS]

DESCRIPTION

fish_key_reader is used to explain how you would bind a certain key sequence. By default, it prints the bind <> command for one key sequence read interactively over standard input.

If the character sequence matches a special key name (see bind --key-names), both bind CHARS ... and bind -k KEYNAME ... usage will be shown. In verbose mode (enabled by passing --verbose), additional details about the characters received, such as the delay between chars, are written to standard error.

The following options are available:

-c or --continuous
    Begins a session where multiple key sequences can be inspected. By default the program exits after capturing a single key sequence.

-V or --verbose
    Tells fish_key_reader to output timing information and explain the sequence in more detail.

-h or --help
    Displays help about using this command.

-v or --version
    Displays the current fish version and then exits.

USAGE NOTES

In verbose mode, the delay in milliseconds since the previous character was received is included in the diagnostic information written to standard error. This information may be useful to determine the optimal fish_escape_delay_ms setting or learn the amount of lag introduced by tools like ssh, mosh or tmux.

fish_key_reader intentionally disables handling of many signals. To terminate fish_key_reader in --continuous mode do:

•   press Control+C twice, or

•   press Control+D twice, or

•   type exit, or

•   type quit

EXAMPLE

    > fish_key_reader
    Press a key:
    # press up-arrow
    bind \e\[A 'do something'
    > fish_key_reader --verbose
    Press a key:
    # press alt+enter
               hex:   1B  char: \e
    (  0.027 ms)  hex:    D  char: \cM  (or \r)
    bind \e\r 'do something'

Copyright
2023, fish-shell developers