Skip to content

Instantly share code, notes, and snippets.

@wonderful-panda
Created March 21, 2012 21:50
Show Gist options
  • Save wonderful-panda/2153416 to your computer and use it in GitHub Desktop.
Save wonderful-panda/2153416 to your computer and use it in GitHub Desktop.
Windows向け virtualenvwrapperもどき
@echo off
set BK_WORKON_HOME=%WORKON_HOME%
set BK_HOMEDIR=%HOMEDIR%
set WORKON_HOME=C:\DEVELOP\py_envs
set HOMEDIR=C:\DEVELOP\bin
for /F "usebackq" %%I IN (`python %HOMEDIR%\workon.py %*`) DO call %%I
set WORKON_HOME=%BK_WORKON_HOME%
set HOMEDIR=%BK_HOMEDIR%
import glob, os, sys
def main():
WORKON_HOME=os.environ.get('WORKON_HOME')
pattern = WORKON_HOME + r'\*' if len(sys.argv) == 1 \
else r'%s\%s*' % (WORKON_HOME, sys.argv[1])
folders = list(glob.glob(pattern))
if len(folders) == 0:
return
if len(folders) == 1:
print os.path.join(folders[0], r'scripts\activate.bat')
return
for i, folder in enumerate(folders):
sys.stderr.write("%2d -- %s\n" % (i + 1, os.path.basename(folder)))
sys.stderr.write("No.>")
try:
no = int(sys.stdin.readline().rstrip('\n'))
print os.path.join(folders[no - 1], r'scripts\activate.bat')
except ValueError:
pass
if __name__ == "__main__":
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment