16e75ecac0
Zsh and newer versions of bash have a builtin `which` function that will show you if a command is actually an alias or a function. For functions, the entire function is printed, and our `spack()` function is quite long. Instead of printing out all that, make the `spack()` function a wrapper around `_spack_shell_wrapper()`, and include some no-ops in the definition so that users can see where it was created and where Spack is installed. Here's what the new output looks like in zsh: ```console $ which spack spack () { : this is a shell function from: /Users/gamblin2/src/spack/share/spack/setup-env.sh : the real spack script is here: /Users/gamblin2/src/spack/bin/spack _spack "$@" return $? } ``` Note that `:` is a no-op in Bourne shell; it just discards anything after it on the line. We use it here to embed paths in the function definition (as comments are stripped). |
||
---|---|---|
.. | ||
bash | ||
csh | ||
docker | ||
docs/docker/module-file-tutorial | ||
gitlab | ||
keys | ||
logo | ||
qa | ||
templates | ||
setup-env.csh | ||
setup-env.fish | ||
setup-env.sh | ||
setup-tutorial-env.sh | ||
spack-completion.bash |