tide/functions/fish_prompt.fish

41 lines
1.2 KiB
Fish
Raw Normal View History

2020-11-25 20:41:40 +03:00
_tide_detect_os
_tide_git_prompt_set_vars
2020-12-08 02:15:29 +03:00
# Set things that wont change once
set -g _tide_left_prompt_display_var _tide_left_prompt_display_$fish_pid
set -gx _tide_fish_pid $fish_pid
set -x fish_term24bit $fish_term24bit
2020-11-25 07:54:49 +03:00
function fish_prompt
2020-11-25 22:54:17 +03:00
set -lx _tide_last_pipestatus $pipestatus
set -lx _tide_last_status $status
set -lx _tide_jobs_number (jobs --pid | count)
2020-11-25 20:22:35 +03:00
fish --command "
set CMD_DURATION $CMD_DURATION
set COLUMNS $COLUMNS
2020-11-25 22:57:45 +03:00
set fish_bind_mode $fish_bind_mode
2020-11-25 20:22:35 +03:00
command kill $_tide_last_pid 2>/dev/null
set -U _tide_left_prompt_display_$fish_pid (_tide_prompt)" &
2020-11-25 01:21:22 +03:00
2020-11-25 09:13:05 +03:00
set -g _tide_last_pid (jobs --last --pid)
2020-11-25 20:41:40 +03:00
disown $_tide_last_pid 2>/dev/null
2020-12-08 02:15:29 +03:00
string unescape $$_tide_left_prompt_display_var
2020-09-07 22:00:54 +03:00
end
2020-11-21 01:04:04 +03:00
function _tide_refresh_prompt --on-variable _tide_left_prompt_display_$fish_pid
2020-11-21 01:04:04 +03:00
commandline --function repaint
end
function _tide_on_fish_cancel --on-event fish_cancel
string repeat --no-newline --count (string match --all 'newline' $tide_left_prompt_items | count) \n
test "$tide_print_newline_before_prompt" = 'true' && printf '%b' '\n'
end
2020-11-25 07:54:49 +03:00
function _tide_on_fish_exit --on-event fish_exit
set -e _tide_left_prompt_display_$fish_pid
set -e _tide_right_prompt_display_$fish_pid
2020-11-21 01:04:04 +03:00
end