(refactor) default mode prompt: multiple test equality checks → contains

While at it, use early return.

Closes #12766
This commit is contained in:
Drazape
2026-05-19 21:17:39 +05:30
committed by Johannes Altmanninger
parent 684d360ece
commit 4c30c9ec2d

View File

@@ -1,28 +1,28 @@
function fish_default_mode_prompt --description "Display vi prompt mode"
# Do nothing if not in vi mode
if test "$fish_key_bindings" = fish_vi_key_bindings
or test "$fish_key_bindings" = fish_hybrid_key_bindings
switch $fish_bind_mode
case default
set_color --bold red
echo '[N]'
case insert
set_color --bold green
echo '[I]'
case replace_one
set_color --bold green
echo '[R]'
case replace
set_color --bold cyan
echo '[R]'
case visual
set_color --bold magenta
echo '[V]'
case operator f F t T
set_color --bold cyan
echo '[N]'
end
set_color --reset
echo -n ' '
if not contains -- "$fish_key_bindings" fish_vi_key_bindings fish_hybrid_key_bindings
return
end
switch $fish_bind_mode
case default
set_color --bold red
echo '[N]'
case insert
set_color --bold green
echo '[I]'
case replace_one
set_color --bold green
echo '[R]'
case replace
set_color --bold cyan
echo '[R]'
case visual
set_color --bold magenta
echo '[V]'
case operator f F t T
set_color --bold cyan
echo '[N]'
end
set_color --reset
echo -n ' '
end