summaryrefslogtreecommitdiff
path: root/plugins/kamal/kamal.plugin.zsh
diff options
context:
space:
mode:
authorIgor Aleksandrov <igor.alexandrov@gmail.com>2025-05-15 01:48:50 +0400
committerGitHub <noreply@github.com>2025-05-14 14:48:50 -0700
commitc95509ebfdbcc3c497f12697cfd2717bcb0a528b (patch)
tree7abc90b42fd916a49a3d3f4c6ac79ed7efa6d486 /plugins/kamal/kamal.plugin.zsh
parentc34c1da736f4f162206e1153e66850788f3e2e16 (diff)
downloadzsh-c95509ebfdbcc3c497f12697cfd2717bcb0a528b.tar.gz
zsh-c95509ebfdbcc3c497f12697cfd2717bcb0a528b.tar.bz2
zsh-c95509ebfdbcc3c497f12697cfd2717bcb0a528b.zip
feat(kamal): add autocomplete support and aliases for Kamal (https://kamal-deploy.org/) (#13080)
Diffstat (limited to 'plugins/kamal/kamal.plugin.zsh')
-rw-r--r--plugins/kamal/kamal.plugin.zsh25
1 files changed, 25 insertions, 0 deletions
diff --git a/plugins/kamal/kamal.plugin.zsh b/plugins/kamal/kamal.plugin.zsh
new file mode 100644
index 000000000..e21ab4f92
--- /dev/null
+++ b/plugins/kamal/kamal.plugin.zsh
@@ -0,0 +1,25 @@
+# Find kamal binary (local ./bin/kamal or global)
+function _kamal_command () {
+ if [ -x "./bin/kamal" ]; then
+ ./bin/kamal "$@"
+ else
+ command kamal "$@"
+ fi
+}
+
+function which-kamal() {
+ if [ -x "./bin/kamal" ]; then
+ echo "Using local ./bin/kamal"
+ else
+ echo "Using global $(command -v kamal)"
+ fi
+}
+
+# Use `_kamal_command`` function for `kamal` command
+alias kamal='_kamal_command'
+
+# Aliases
+alias kad='kamal deploy'
+
+# Hook up completion
+compdef _kamal_command=kamal