mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-12-01 15:14:26 +08:00
6c80a3461c
Currently fish doesn't recognize toor as special. However, it's likely that on BSD systems, fish shell will be used on toor, not on root (toor is an intentionally existing account to use more advanced shell on, like shell).
52 lines
1.3 KiB
Fish
52 lines
1.3 KiB
Fish
function fish_vi_prompt_cm --description "Displays the current mode"
|
|
echo -n " "
|
|
switch $fish_bind_mode
|
|
case default
|
|
set_color --bold --background red white
|
|
echo "[N]"
|
|
case insert
|
|
set_color --bold --background green white
|
|
echo "[I]"
|
|
case visual
|
|
set_color --bold --background magenta white
|
|
echo "[V]"
|
|
end
|
|
set_color normal
|
|
end
|
|
|
|
function fish_vi_prompt --description "Simple vi prompt"
|
|
|
|
# Just calculate these once, to save a few cycles when displaying the prompt
|
|
if not set -q __fish_prompt_hostname
|
|
set -g __fish_prompt_hostname (hostname|cut -d . -f 1)
|
|
end
|
|
|
|
if not set -q __fish_prompt_normal
|
|
set -g __fish_prompt_normal (set_color normal)
|
|
end
|
|
|
|
switch $USER
|
|
|
|
case root toor
|
|
|
|
if not set -q __fish_prompt_cwd
|
|
if set -q fish_color_cwd_root
|
|
set -g __fish_prompt_cwd (set_color $fish_color_cwd_root)
|
|
else
|
|
set -g __fish_prompt_cwd (set_color $fish_color_cwd)
|
|
end
|
|
end
|
|
|
|
echo -n -s "$USER" @ "$__fish_prompt_hostname" ' ' "$__fish_prompt_cwd" (prompt_pwd) "$__fish_prompt_normal" (fish_vi_prompt_cm) '# '
|
|
|
|
case '*'
|
|
|
|
if not set -q __fish_prompt_cwd
|
|
set -g __fish_prompt_cwd (set_color $fish_color_cwd)
|
|
end
|
|
|
|
echo -n -s "$USER" @ "$__fish_prompt_hostname" ' ' "$__fish_prompt_cwd" (prompt_pwd) "$__fish_prompt_normal" (fish_vi_prompt_cm) '> '
|
|
|
|
end
|
|
end
|