mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-23 09:03:37 +08:00
419675b9e5
The default vi mode prompt is kind of ugly, mostly because we include this `[I]` with a super bright green background and white text, which is particularly grating because most prompts don't actually have a background. So we get a ton of people asking "How do I remove this [I]" when they could really benefit from having the mode shown. There's a few ways to make this look nicer, the simplest is to just keep the same colors but use them as foreground instead of background colors, which looks much more understated. The mode prompt is important, but not more than the actual contents of the commandline, so it shouldn't have ALARMING colors.
26 lines
801 B
Fish
26 lines
801 B
Fish
function fish_default_mode_prompt --description "Display the default mode for the prompt"
|
|
# 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]'
|
|
end
|
|
set_color normal
|
|
echo -n ' '
|
|
end
|
|
end
|