aboutsummaryrefslogtreecommitdiffhomepage
path: root/share/functions/fish_prompt.fish
diff options
context:
space:
mode:
authorGravatar axel <axel@liljencrantz.se>2006-11-19 07:21:47 +1000
committerGravatar axel <axel@liljencrantz.se>2006-11-19 07:21:47 +1000
commiteb3c99c54e57a13e3fd7ee1f3e7504b6327c807f (patch)
tree2cca228785728aed0fc886b40a07b01d9c277b02 /share/functions/fish_prompt.fish
parent5d864e3f690f36cb9c31549375126a2e202ff946 (diff)
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
Diffstat (limited to 'share/functions/fish_prompt.fish')
-rw-r--r--share/functions/fish_prompt.fish15
1 files changed, 6 insertions, 9 deletions
diff --git a/share/functions/fish_prompt.fish b/share/functions/fish_prompt.fish
index 42666ff7..bfded25a 100644
--- a/share/functions/fish_prompt.fish
+++ b/share/functions/fish_prompt.fish
@@ -2,24 +2,21 @@
# string has a newline before and after, so that fish will know how
# 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")
# 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
-
- 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