mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-16 10:50:07 +00:00
68 lines
2.2 KiB
Markdown
68 lines
2.2 KiB
Markdown
# alias-finder plugin
|
||
|
||
This plugin searches the defined aliases and outputs any that match the command inputted. This makes learning new aliases easier.
|
||
|
||
## Setup
|
||
|
||
To use it, add `alias-finder` to the `plugins` array of your zshrc file:
|
||
```
|
||
plugins=(... alias-finder)
|
||
```
|
||
|
||
To enable it for every single command, set zstyle in your `~/.zshrc`.
|
||
|
||
```zsh
|
||
# ~/.zshrc
|
||
|
||
zstyle ':omz:plugins:alias-finder' autoload yes # disabled by default
|
||
zstyle ':omz:plugins:alias-finder' longer yes # disabled by default
|
||
zstyle ':omz:plugins:alias-finder' exact yes # disabled by default
|
||
zstyle ':omz:plugins:alias-finder' cheaper yes # disabled by default
|
||
```
|
||
|
||
As you can see, options are also available with zstyle.
|
||
|
||
## Usage
|
||
|
||
When you execute a command alias finder will look at your defined aliases and suggest shorter aliases you could have used, for example:
|
||
|
||
Running the un-aliased `git status` command:
|
||
```sh
|
||
╭─tim@fox ~/repo/gitopolis ‹main›
|
||
╰─$ git status
|
||
|
||
gst='git status' # <=== shorter suggestion from alias-finder
|
||
|
||
On branch main
|
||
Your branch is up-to-date with 'origin/main'.
|
||
nothing to commit, working tree clean
|
||
```
|
||
|
||
Running a shorter `git st` alias from `.gitconfig` that it suggested :
|
||
```sh
|
||
╭─tim@fox ~/repo/gitopolis ‹main›
|
||
╰─$ git st
|
||
gs='git st' # <=== shorter suggestion from alias-finder
|
||
## main...origin/main
|
||
```
|
||
|
||
Running the shortest `gs` shell alias that it found:
|
||
```sh
|
||
╭─tim@fox ~/repo/gitopolis ‹main›
|
||
╰─$ gs
|
||
# <=== no suggestions alias-finder because this is the shortest
|
||
## main...origin/main
|
||
```
|
||
|
||
![image](https://github.com/ohmyzsh/ohmyzsh/assets/19378/39642750-fb10-4f1a-b7f9-f36789eeb01b)
|
||
|
||
|
||
### Options
|
||
|
||
> In order to clarify, let's say `alias a=abc` has source 'abc' and destination 'a'.
|
||
|
||
- Use `--longer` or `-l` to include aliases where the source is longer than the input (in other words, the source could contain the whole input).
|
||
- Use `--exact` or `-e` to avoid aliases where the source is shorter than the input (in other words, the source must be the same with the input).
|
||
- Use `--cheaper` or `-c` to avoid aliases where the destination is longer than the input (in other words, the destination must be the shorter than the input).
|
||
|
||
|