Update venv function.
This commit is contained in:
parent
2521383c82
commit
98135100dc
@ -6,11 +6,23 @@ function venv -d "Manipulate Python virtual environments (venv)"
|
|||||||
end
|
end
|
||||||
|
|
||||||
if test $argv[1] = "list" -o $argv[1] = "l"
|
if test $argv[1] = "list" -o $argv[1] = "l"
|
||||||
ls -1 --color=no $WORKON_HOME
|
printf "%10s %10s %10s\n" "Name" "Version" "IPython"
|
||||||
|
for venv in (ls $WORKON_HOME)
|
||||||
|
set venv_path "$WORKON_HOME/$venv"
|
||||||
|
set venv_version ($venv_path/bin/python --version | cut -d' ' -f 2)
|
||||||
|
set venv_ipython (command -v $venv_path/bin/ipython > /dev/null && echo "yes" || echo "no")
|
||||||
|
printf "%10s %10s %10s\n" "$venv" "$venv_version" "$venv_ipython"
|
||||||
|
end
|
||||||
else if test $argv[1] = "deactivate" -o $argv[1] = "d"
|
else if test $argv[1] = "deactivate" -o $argv[1] = "d"
|
||||||
type -q deactivate; and deactivate
|
type -q deactivate; and deactivate
|
||||||
else if test $argv[1] = "activate" -o $argv[1] = "a"
|
else if test $argv[1] = "activate" -o $argv[1] = "a"
|
||||||
source $WORKON_HOME/{$argv[2]}/bin/activate.fish
|
source $WORKON_HOME/{$argv[2]}/bin/activate.fish
|
||||||
|
else if test $argv[1] = "remove" -o $argv[1] = "r"
|
||||||
|
set venv_folder $WORKON_HOME/{$argv[2]}
|
||||||
|
if set -q VIRTUAL_ENV && test $VIRTUAL_ENV = $venv_folder
|
||||||
|
deactivate
|
||||||
|
end
|
||||||
|
rm -rf $venv_folder
|
||||||
else
|
else
|
||||||
return 1
|
return 1
|
||||||
end
|
end
|
||||||
@ -23,9 +35,16 @@ end
|
|||||||
complete -c venv -f
|
complete -c venv -f
|
||||||
|
|
||||||
# subcommand completion
|
# subcommand completion
|
||||||
set -l commands list deactivate activate
|
set -l commands list deactivate activate remove
|
||||||
complete -c venv -n "not __fish_seen_subcommand_from $commands" -a "$commands"
|
complete -c venv -n "not __fish_seen_subcommand_from $commands" -a "$commands"
|
||||||
|
|
||||||
# activate completion
|
# activate completion
|
||||||
|
complete -c venv -n "__fish_seen_subcommand_from a" \
|
||||||
|
-a "(ls $WORKON_HOME)"
|
||||||
complete -c venv -n "__fish_seen_subcommand_from activate" \
|
complete -c venv -n "__fish_seen_subcommand_from activate" \
|
||||||
-a "(ls $WORKON_HOME)"
|
-a "(ls $WORKON_HOME)"
|
||||||
|
|
||||||
|
complete -c venv -n "__fish_seen_subcommand_from r" \
|
||||||
|
-a "(ls $WORKON_HOME)"
|
||||||
|
complete -c venv -n "__fish_seen_subcommand_from remove" \
|
||||||
|
-a "(ls $WORKON_HOME)"
|
||||||
|
Loading…
Reference in New Issue
Block a user