aboutsummaryrefslogtreecommitdiff
path: root/.oh-my-zsh/plugins/ant
diff options
context:
space:
mode:
Diffstat (limited to '.oh-my-zsh/plugins/ant')
-rw-r--r--.oh-my-zsh/plugins/ant/README.md12
-rw-r--r--.oh-my-zsh/plugins/ant/ant.plugin.zsh16
2 files changed, 28 insertions, 0 deletions
diff --git a/.oh-my-zsh/plugins/ant/README.md b/.oh-my-zsh/plugins/ant/README.md
new file mode 100644
index 0000000..5f88984
--- /dev/null
+++ b/.oh-my-zsh/plugins/ant/README.md
@@ -0,0 +1,12 @@
+# Ant
+
+This plugin provides completion for [Ant](https://ant.apache.org/).
+
+To use it add ant to the plugins array in your zshrc file.
+
+```bash
+plugins=(... ant)
+```
+
+It caches ant targets in a file named `.ant_targets`, you might want to add that to
+your `.gitignore` file.
diff --git a/.oh-my-zsh/plugins/ant/ant.plugin.zsh b/.oh-my-zsh/plugins/ant/ant.plugin.zsh
new file mode 100644
index 0000000..0b738c9
--- /dev/null
+++ b/.oh-my-zsh/plugins/ant/ant.plugin.zsh
@@ -0,0 +1,16 @@
+_ant_does_target_list_need_generating () {
+ [ ! -f .ant_targets ] && return 0;
+ [ build.xml -nt .ant_targets ] && return 0;
+ return 1;
+}
+
+_ant () {
+ if [ -f build.xml ]; then
+ if _ant_does_target_list_need_generating; then
+ ant -p | awk -F " " 'NR > 5 { print lastTarget }{lastTarget = $1}' > .ant_targets
+ fi
+ compadd -- `cat .ant_targets`
+ fi
+}
+
+compdef _ant ant