Skip to content

Fish should check the current vi-mode when gaining focus and send the corresponding cursor shape sequence #4788

@kmoschcau

Description

@kmoschcau

Hi, this isn't really a problem that I encounter when I have fish running in just a plain gnome-terminal.
But it really becomes apparent, when using tmux.

When you change the vi-mode in a fish session inside tmux, that works fine. As soon as you switch to another pane or window, which has currently something running that also modifies the cursor shape (like (n)vim or another fish session with a different vi-mode) and then switch back, the cursor shape is not returned to how it was when leaving the first pane.
This also occurs, when you exit a tmux pane or window, that already has another fish session running, because for the execution time of the command, the cursor shape is returned to the default.
From what I gather, this might be fixable, if you have fish check it's current vi-mode when gaining focus and then sending the corresponding cursor shape sequence again.

Here is some system info from me (I masked the machine name):

$ fish --version
fish, version 2.7.1
$ uname -a
Linux XXXXXXXXXXXX 4.13.0-36-generic #40-Ubuntu SMP Fri Feb 16 20:07:48 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 17.10
Release:	17.10
Codename:	artful
$ echo $TERM
xterm-256color-italic
$ tmux new
$ echo $TERM
tmux

If you want me to record an asciinema recording, I can do so. I never used it before so I didn't do it right now. Not sure cursor shapes would show up on it anyway.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions