mirror of
https://github.com/fish-shell/fish-shell.git
synced 2025-03-27 14:45:13 +08:00
Move the event handler for fish_color_cwd to init file, so it is not autounloaded. Also cache output of call to set_color command to improve performance a bit.
darcs-hash:20061118212147-ac50b-b0f44cca2acf7465dd9ff071aa35a3ac81f0615f.gz
This commit is contained in:
parent
5d864e3f69
commit
eb3c99c54e
@ -161,6 +161,17 @@ set_default CDPATH . ~
|
|||||||
|
|
||||||
functions -e set_default
|
functions -e set_default
|
||||||
|
|
||||||
|
#
|
||||||
|
# This event handler makes sure the prompt is repainted when
|
||||||
|
# fish_color_cwd changes value. Like all event handlers, it can't be
|
||||||
|
# autoloaded.
|
||||||
|
#
|
||||||
|
|
||||||
|
function __fish_repaint --on-variable fish_color_cwd -d (N_ "Event handler, repaints the prompt when fish_color_cwd changes")
|
||||||
|
set -e __fish_prompt_cwd
|
||||||
|
commandline -f null
|
||||||
|
end
|
||||||
|
|
||||||
#
|
#
|
||||||
# A few minor convenience functions
|
# A few minor convenience functions
|
||||||
#
|
#
|
||||||
|
@ -2,24 +2,21 @@
|
|||||||
# string has a newline before and after, so that fish will know how
|
# string has a newline before and after, so that fish will know how
|
||||||
# long it is.
|
# long it is.
|
||||||
|
|
||||||
# This event handler makes sure the prompt is repainted when fish_color_cwd changes value
|
|
||||||
function __fish_repaint --on-variable fish_color_cwd -d (N_ "Event handler, repaints the prompt when fish_color_cwd changes")
|
|
||||||
commandline -f null
|
|
||||||
end
|
|
||||||
|
|
||||||
function fish_prompt -d (N_ "Write out the prompt")
|
function fish_prompt -d (N_ "Write out the prompt")
|
||||||
|
|
||||||
# Just calculate these once, to save a few cycles when displaying the prompt
|
# Just calculate these once, to save a few cycles when displaying the prompt
|
||||||
if not set -q __fish_prompt_hostname
|
if not set -q __fish_prompt_hostname
|
||||||
set -g __fish_prompt_hostname (hostname|cut -d . -f 1)
|
set -g __fish_prompt_hostname (hostname|cut -d . -f 1)
|
||||||
end
|
end
|
||||||
|
|
||||||
if not set -q __fish_prompt_normal
|
if not set -q __fish_prompt_normal
|
||||||
set -g __fish_prompt_normal (set_color normal)
|
set -g __fish_prompt_normal (set_color normal)
|
||||||
end
|
end
|
||||||
|
|
||||||
set -l prompt_color (set_color $fish_color_cwd)
|
|
||||||
|
|
||||||
printf '%s@%s %s%s%s> \n' $USER $__fish_prompt_hostname "$prompt_color" (prompt_pwd) "$__fish_prompt_normal"
|
if not set -q __fish_prompt_cwd
|
||||||
|
set -g __fish_prompt_cwd (set_color $fish_color_cwd)
|
||||||
|
end
|
||||||
|
|
||||||
|
printf '%s@%s %s%s%s> \n' $USER $__fish_prompt_hostname "$__fish_prompt_cwd" (prompt_pwd) "$__fish_prompt_normal"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user