From 5bebbc641c6c837a01427987068c670485d7472d Mon Sep 17 00:00:00 2001 From: Dave Yarwood Date: Sat, 28 Feb 2015 14:10:31 -0500 Subject: [PATCH 1/3] use older expr syntax for backwards compatibility with the expr that comes with OSX --- plugins/better-alias/balias.fish | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/better-alias/balias.fish b/plugins/better-alias/balias.fish index d818791..1d14075 100644 --- a/plugins/better-alias/balias.fish +++ b/plugins/better-alias/balias.fish @@ -1,6 +1,6 @@ function balias --argument alias command eval 'alias $alias $command' - if expr match $command '^sudo '>/dev/null + if expr $command : '^sudo '>/dev/null set command (expr substr + $command 6 (expr length $command)) end complete -c $alias -xa "( From 849fcbecc894f696ff65c99ac4a18152e9256734 Mon Sep 17 00:00:00 2001 From: Dave Yarwood Date: Sun, 1 Mar 2015 01:06:27 -0500 Subject: [PATCH 2/3] add fish-spec --- plugins/better-alias/balias.spec.fish | 30 +++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 plugins/better-alias/balias.spec.fish diff --git a/plugins/better-alias/balias.spec.fish b/plugins/better-alias/balias.spec.fish new file mode 100644 index 0000000..c65380a --- /dev/null +++ b/plugins/better-alias/balias.spec.fish @@ -0,0 +1,30 @@ +import plugins/fish-spec +import plugins/balias + +function describe_library -d "better-alias" + + function after_all + functions -e changedir + end + + function it_doesnt_fail + balias changedir cd + expect test $status --to-be-true + end + + function it_defines_an_alias + functions changedir + expect test $status --to-be-true + end + + function you_can_use_the_alias + mkdir testdir + changedir testdir + expect test $status --to-be-true + cd .. + rmdir testdir + end + +end + +spec.run $argv \ No newline at end of file From 14902584f5015aea22eedbeb3ed1ed17551cef8f Mon Sep 17 00:00:00 2001 From: Dave Yarwood Date: Sun, 1 Mar 2015 09:20:42 -0500 Subject: [PATCH 3/3] fix for sudo command aliases --- plugins/better-alias/balias.fish | 3 +-- plugins/better-alias/balias.spec.fish | 6 ++++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/plugins/better-alias/balias.fish b/plugins/better-alias/balias.fish index 1d14075..a80c725 100644 --- a/plugins/better-alias/balias.fish +++ b/plugins/better-alias/balias.fish @@ -1,11 +1,10 @@ function balias --argument alias command eval 'alias $alias $command' if expr $command : '^sudo '>/dev/null - set command (expr substr + $command 6 (expr length $command)) + set command (echo "$command" | cut -c6-) end complete -c $alias -xa "( set -l cmd (commandline -pc | sed -e 's/^ *\S\+ *//' ); complete -C\"$command \$cmd\"; )" end - diff --git a/plugins/better-alias/balias.spec.fish b/plugins/better-alias/balias.spec.fish index c65380a..8b869a8 100644 --- a/plugins/better-alias/balias.spec.fish +++ b/plugins/better-alias/balias.spec.fish @@ -5,6 +5,7 @@ function describe_library -d "better-alias" function after_all functions -e changedir + functions -e ls_as_root end function it_doesnt_fail @@ -25,6 +26,11 @@ function describe_library -d "better-alias" rmdir testdir end + function it_chops_off_sudo + balias ls_as_root 'sudo ls' + expect test $status --to-be-true + end + end spec.run $argv \ No newline at end of file