From a7727765dcf9fb2ab40e0e3352a5145d337e6133 Mon Sep 17 00:00:00 2001 From: Kevin Ballard Date: Thu, 2 Oct 2014 17:22:55 -0700 Subject: [PATCH] Clean up prompt_pwd with the new function -V flag Also fixes `cd /private` displaying as no path on OS X. --- share/functions/prompt_pwd.fish | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/share/functions/prompt_pwd.fish b/share/functions/prompt_pwd.fish index 991b007b7..ce98f6d44 100644 --- a/share/functions/prompt_pwd.fish +++ b/share/functions/prompt_pwd.fish @@ -1,14 +1,13 @@ +set -l args_pre +set -l args_post switch (uname) case Darwin - function prompt_pwd --description "Print the current working directory, shortened to fit the prompt" - echo $PWD | sed -e "s|^$HOME|~|" -e 's|^/private||' -e 's-\([^/.]\)[^/]*/-\1/-g' - end + set args_pre $args_pre -e 's|^/private/|/|' case 'CYGWIN_*' - function prompt_pwd --description "Print the current working directory, shortened to fit the prompt" - echo $PWD | sed -e "s|^$HOME|~|" -e 's|^/cygdrive/\(.\)|\1/:|' -e 's-\([^/.]\)[^/]*/-\1/-g' -e 's-^\([^/]\)/:/\?-\u\1:/-' - end -case '*' - function prompt_pwd --description "Print the current working directory, shortened to fit the prompt" - echo $PWD | sed -e "s|^$HOME|~|" -e 's-\([^/.]\)[^/]*/-\1/-g' - end + set args_pre $args_pre -e 's|^/cygdrive/\(.\)|\1/:|' + set args_post $args_post -e 's-^\([^/]\)/:/\?-\u\1:/-' +end + +function prompt_pwd -V args_pre -V args_post --description "Print the current working directory, shortened to fit the prompt" + echo $PWD | sed -e "s|^$HOME|~|" $args_pre -e 's-\([^/.]\)[^/]*/-\1/-g' $args_post end