fish_vi_key_bindings - set vi key bindings for fish — fish-shell 4.9.2 documentation

# fish_vi_key_bindings - set vi key bindings for fish

## Synopsis

    fish_vi_key_bindings
    fish_vi_key_bindings [--no-erase] [INIT_MODE]

## Description

`fish_vi_key_bindings` sets the vi key bindings for `fish` shell.

If a valid INIT_MODE is provided (insert, default, visual), then that mode will become the default . If no INIT_MODE is given, the mode defaults to insert mode.

The following parameters are available:

--no-erase

  Does not clear previous set bindings

Further information on how to use vi mode.

## Differences from Vim

fish’s vi mode aims to be familiar to vim users, but there are some differences:

Word character handling

  In vim, underscore (`_`) is treated as a keyword character by default, so word motions like `w`, `b`, and `e` treat `foo_bar` as a single word. In fish, underscore is treated as punctuation, so word motions stop at underscores. For example, pressing `w` on `foo_bar` in fish stops at the `_`, while in vim it would jump past the entire identifier.

## Examples

To start using vi key bindings:

    fish_vi_key_bindings

or `set -g fish_key_bindings fish_vi_key_bindings` in config.fish.