Skip to content

Commit 4ceb696

Browse files
committed
add showvirtualenv and re-implement lsvirtualenv with it
1 parent 3769479 commit 4ceb696

File tree

1 file changed

+28
-6
lines changed

1 file changed

+28
-6
lines changed

virtualenvwrapper.sh

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -241,24 +241,28 @@ virtualenvwrapper_show_workon_options () {
241241
}
242242

243243
_lsvirtualenv_usage () {
244-
echo "lsvirtualenv [-lh]"
244+
echo "lsvirtualenv [-blh]"
245+
echo " -b -- brief mode"
246+
echo " -l -- long mode"
247+
echo " -h -- this help message"
245248
}
246249

247250
# List virtual environments
248251
#
249252
# Usage: lsvirtualenv [-l]
250253
lsvirtualenv () {
251-
typeset args=$(getopt lh $*)
254+
typeset args=$(getopt blh $*)
252255
if [ $? != 0 ]
253256
then
254257
_lsvirtualenv_usage
255258
return 1
256259
fi
257-
typeset long_mode=false
260+
typeset long_mode=true
258261
for opt in $args
259262
do
260263
case "$opt" in
261264
-l) long_mode=true;;
265+
-b) long_mode=false;;
262266
-h) _lsvirtualenv_usage;
263267
return 1;;
264268
esac
@@ -268,15 +272,33 @@ lsvirtualenv () {
268272
then
269273
for env_name in $(virtualenvwrapper_show_workon_options)
270274
do
271-
echo -n "$env_name"
272-
virtualenvwrapper_run_hook "get_env_details" "$env_name"
273-
echo
275+
showvirtualenv "$env_name"
274276
done
275277
else
276278
virtualenvwrapper_show_workon_options
277279
fi
278280
}
279281

282+
# Show details of a virtualenv
283+
#
284+
# Usage: showvirtualenv [env]
285+
showvirtualenv () {
286+
typeset env_name="$1"
287+
if [ -z "$env_name" ]
288+
then
289+
if [ -z "$VIRTUAL_ENV" ]
290+
then
291+
echo "showvirtualenv [env]"
292+
return 1
293+
fi
294+
env_name=$(basename $VIRTUAL_ENV)
295+
fi
296+
297+
echo -n "$env_name"
298+
virtualenvwrapper_run_hook "get_env_details" "$env_name"
299+
echo
300+
}
301+
280302
# List or change working virtual environments
281303
#
282304
# Usage: workon [environment_name]

0 commit comments

Comments
 (0)