Issues addressed:
1. Confusing and unintuitive command names
Currently, two commands `loaded` and `list` will list installed
plugins and a single command `ls` lists installed snippets. The namea
don't make much sense or give context to their behavior, nor does
having two commands with identical behavior.
This PR removes the three commands in favor of two new commands
`list-snippets` and `list-plugins`. The names align with the action they
perform.
2. Uninformative output
Current output is hard to grok.
This PR cleans up the output format and uses color to help convey
information.
3. Incorrect
Output does not account for various situations with the only way to
fix is to reload Zsh session which would not always fix it. See images
below for the aforementioned situations.
Signed-off-by: Vladislav Doster <mvdoster@gmail.com>
This can be used to overwrite `as'null'`, which would otherwise not trigger
completion detection and installation.
It will override the `nocompletions` ice when both are specified (e.g., using
the default ice annex).
### configure ice
The new `configure''` ice is a facade for the following code.
```zsh
atclone'./configure --prefix=$PWD'
atpull'%atclone'
```
### Example:
Without the `configure` ice:
```zsh
zi for \
as'null' \
atclone'autoreconf -iv && ./configure --prefix=$PWD' \
atpull'%atclone' \
lbin'!**/stow' \
make'PREFIX=$PWD install' \
nocompile \
@aspiers/stow
```
With the `configure` ice:
```zsh
zi for \
as'null' \
configure'#' \
lbin'!**/stow' \
make'PREFIX=$PWD install' \
nocompile \
@aspiers/stow
```
Additionally, passing `#` as the ice value will look for and run `autogen.sh` prior to running `./configure`.
* Add link ice for local-only snippets that uses symlink instead of copying
* update docs
* fix README for link ice
* fix unit tests for link ice
- account for the host not having `realpath` >= 8.23 (the symlink will be
an absolute path instead of a relative path)
- Display load moments to `zinit times` via new `-a` flag.
I found it useful to show both plugin load times, as well as load moments:
Signed-off-by: Vladislav Doster <mvdoster@gmail.com>
A user can now specify a program via the `$ZINIT[LIST_COMMAND]`
variable. Additionally, it will first check for `exa` and fallback to
tree if this variable is not set.
e.g., use exa or any `tree`-esque program in `zinit ls`.
Closes#170
Signed-off-by: Vladislav Doster <mvdoster@gmail.com>