Add a zsh-native completion system function for `asdf`.
I too often hit snags with bash completions in zsh, so I bias strongly
towards zsh-native completions.
This needs to end up in `$fpath` with a filename of `_asdf` but it
seemed unfriendly to use that name in this repo, so call it `_asdf.zsh`
and document a symlink. Mark the file as executable to be compatible
with one convention of "personal functions should only autoload if
executable" (but that's probably so historic that very few people still
use it; I'm one of them, though).
It's possible for plugins to define new asdf commands. This way plugins can extend asdf capabilities or expose utilities related to their managed tool.
For example, a `foo` plugin might expose the command `asdf foo bar` by providing an executable file at `bin/bar`.
If `bin/bar` is a file but has no executable bit set, then its considered a source-able bash script, and will be sourced
with all the functions in `$ASDF_DIR/lib/utils.sh` already loaded.
A good example of this feature is the `nodejs` plugin, where people must import the release team keyring before
installing a nodejs version. People can execute the following command without having to know where exactly is the plugin located.
Many users might want not to use shims and would prefer the asdf environment be automatically set for them when entering the project directory. Add a link to asdf-direnv plugin README for more details on how to integrate asdf with direnv to achieve this.
The recommended Homebrew setup required adding two `brew --prefix` commands
to the shell profile. `brew` commands canbe slow, so this introduced a notable
lag when sourcing the shell profile.
Homebrew paths do not change, so we can determine the necessary paths one time
during setup and use static paths in the shell profile.
* Add extra plugin dependencies
I found on a fresh Ubuntu install test that it pays to have unzip and curl installed for some of the asdf plugins to install properly so it seems to make sense adding these here to give a nicer getting started experience.
I do not have brew or spack handy to test but from what I can see these packages should exist.
* Update core-manage-asdf-vm.md