Skip to content

Vi mode cursor shape not updating on ctrl-c when in default mode #8125

@SpikeTheMarmot

Description

@SpikeTheMarmot
$ fish --version
fish, version 3.3.1
$ echo $version
3.3.1
$ lsb_release -d
Description:	Arch Linux
$ uname -a
Linux marmot 5.12.14-arch1-1 #1 SMP PREEMPT Thu, 01 Jul 2021 07:26:06 +0000 x86_64 GNU/Linux
$ echo $TERM
xterm-kitty

Hey,
after further configuration of fish to my liking, I have discovered another bug with vi mode when using ctrl-c in default mode.
I use the following universal variables to change the appearance of the cursor in vi mode:

SETUVAR fish_cursor_default:block
SETUVAR fish_cursor_insert:line
SETUVAR fish_cursor_replace:underscore
SETUVAR fish_cursor_replace_one:underscore
SETUVAR fish_cursor_visual:block

If you are in normal/default mode and cancel the current input with ctrl-c the shell prints a new prompt in the next line as expected but does not update the cursor shape. If I then go to normal mode and back into insert mode the issue resolves itself.
Apart from that the different cursor shapes have been working well so far.

I am not quite sure what's causing this problem, as fish_vi_cursor_handle should be executed on change of fish_bind_mode and fish_bind_mode actually changes (otherwise the mode prompt would not update correctly). #8103 might be relevant.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething that's not working as intended

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions