mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-25 09:39:52 +08:00
c2cde317f2
This exists to make sure our assertions pass independent of the terminal but now we unconditionally print __fish_cursor_xterm.
33 lines
1.0 KiB
Fish
33 lines
1.0 KiB
Fish
function fish_vi_cursor -d 'Set cursor shape for different vi modes'
|
|
# if stdin is not a tty, there is effectively no bind mode.
|
|
if not test -t 0
|
|
return
|
|
end
|
|
|
|
set -q fish_cursor_unknown
|
|
or set -g fish_cursor_unknown block
|
|
|
|
echo "
|
|
function fish_vi_cursor_handle --on-variable fish_bind_mode --on-event fish_postexec --on-event fish_focus_in --on-event fish_read
|
|
set -l varname fish_cursor_\$fish_bind_mode
|
|
if not set -q \$varname
|
|
set varname fish_cursor_unknown
|
|
end
|
|
__fish_cursor_xterm \$\$varname
|
|
end
|
|
" | source
|
|
|
|
echo "
|
|
function fish_vi_cursor_handle_preexec --on-event fish_preexec
|
|
set -l varname fish_cursor_external
|
|
if not set -q \$varname
|
|
set varname fish_cursor_default
|
|
end
|
|
if not set -q \$varname
|
|
set varname fish_cursor_unknown
|
|
end
|
|
__fish_cursor_xterm \$\$varname
|
|
end
|
|
" | source
|
|
end
|