The Ops Community

Emre for Z-Shell

Posted on • Originally published at dev.to on

✨〰️ ZI 〰️✨ Nickname a Plugin or Snippet

ZI Swiss army knife


❮ ZI ❯ 🧙‍‍♀️ A Swiss Army Knife for Zsh.

Designed to glue everything together. 🔗

https://z.digitalclouds.dev | GitHub | Discussions | Localize


✴️ ZI 🧙‍‍♀️ supports loading a plugin or snippet with a NICK-NAME. Set the nickname through the new id-as'' ice-mod.

For example, one could try to load docker/compose from GitHub binary releases :

zi ice as"program" from"gh-r" mv"docker-compose* -> docker-compose"
zi light "docker/compose"

Enter fullscreen mode Exit fullscreen mode

✴️ This registers plugin under ID docker/compose. Now the user could want to load a completion from GitHub repository (not the binary release catalog) also called docker/compose. The two IDs, both being docker/compose , will collide. The user can however resolve the conflict via id-as'' ice-mod by loading the completion under a nick-name dc-completion:

zi ice as"completion" id-as"dc-completion"
zi load docker/compose

Enter fullscreen mode Exit fullscreen mode

✴️ The completion is now seen under ID dc-completion. Issuing zi report dc-completion works, so as other ZI commands:

 ▲ ~ zi report dc-completion
Plugin report for dc-completion
-------------------------------

Completions:
_docker-compose [enabled]

Enter fullscreen mode Exit fullscreen mode

✴️ This can be also used to nickname snippets.

For example, you can use this to create handlers in place of long urls:

zi ice as"program" id-as"git-unique"
zi snippet https://github.com/Osse/git-scripts/blob/master/git-unique

Enter fullscreen mode Exit fullscreen mode

zi delete git-unique will work, zi times will show git-unique instead of the URL, etc.

Discussion (0)