1234567891011121314151617181920212223242526272829303132333435363738394041 |
- # Setting all environment variables for the venv
- let path-name = (if ((sys).host.name == "Windows") { "Path" } { "PATH" })
- let virtual-env = "D:\TestPythonProject\TEST\venv"
- let bin = "Scripts"
- let path-sep = ";"
- let old-path = ($nu.path | str collect ($path-sep))
- let venv-path = ([$virtual-env $bin] | path join)
- let new-path = ($nu.path | prepend $venv-path | str collect ($path-sep))
- # environment variables that will be batched loaded to the virtual env
- let new-env = ([
- [name, value];
- [$path-name $new-path]
- [_OLD_VIRTUAL_PATH $old-path]
- [VIRTUAL_ENV $virtual-env]
- ])
- load-env $new-env
- # Creating the new prompt for the session
- let virtual_prompt = (if ("" != "") {
- "() "
- } {
- (build-string '(' ($virtual-env | path basename) ') ')
- }
- )
- # If there is no default prompt, then only the env is printed in the prompt
- let new_prompt = (if ( config | select prompt | empty? ) {
- ($"build-string '($virtual_prompt)'")
- } {
- ($"build-string '($virtual_prompt)' (config get prompt | str find-replace "build-string" "")")
- })
- let-env PROMPT_COMMAND = $new_prompt
- # We are using alias as the function definitions because only aliases can be
- # removed from the scope
- alias pydoc = python -m pydoc
- alias deactivate = source "D:\TestPythonProject\TEST\venv\Scripts\deactivate.nu"
|