asdf/asdf.fish

37 lines
803 B
Fish
Raw Normal View History

2016-04-18 00:33:14 -07:00
#!/usr/bin/env fish
2019-01-24 12:42:58 -07:00
set -x ASDF_DIR (dirname (status -f))
set -l asdf_data_dir (
if test -n "$ASDF_DATA_DIR"; echo $ASDF_DATA_DIR;
else; echo $HOME/.asdf; end)
2016-04-18 00:33:14 -07:00
# Add asdf to PATH
2019-01-24 12:42:58 -07:00
set -l asdf_bin_dirs $ASDF_DIR/bin $ASDF_DIR/shims $asdf_data_dir/shims
2016-04-18 00:33:14 -07:00
for x in $asdf_bin_dirs
2019-07-22 16:44:32 -07:00
if test -d $x
for i in (seq 1 (count $PATH))
if test $PATH[$i] = $x
set -e PATH[$i]
break
end
end
2019-04-08 01:11:13 -07:00
end
2019-07-22 16:44:32 -07:00
set PATH $x $PATH
end
# Add function wrapper so we can export variables
function asdf
set command $argv[1]
set -e argv[1]
switch "$command"
case "shell"
# eval commands that need to export variables
source (env ASDF_SHELL=fish asdf "sh-$command" $argv | psub)
case '*'
# forward other commands to asdf script
command asdf "$command" $argv
end
end