summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--Completion/Unix/Command/_quilt22
2 files changed, 26 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index ec3c76a49..c8a04d791 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-02-11 Clint Adams <clint@zsh.org>
+
+ * 22234: Completion/Unix/Command/_quilt: Adeodato Simó's
+ quilt completion improvements.
+
2006-02-09 Wayne Davison <wayned@users.sourceforge.net>
* 22206: Src/Zle/zle.h, Src/Zle/zle_misc.c: fixed broken
diff --git a/Completion/Unix/Command/_quilt b/Completion/Unix/Command/_quilt
index 8c34c49b1..a2fd799a6 100644
--- a/Completion/Unix/Command/_quilt
+++ b/Completion/Unix/Command/_quilt
@@ -7,4 +7,24 @@ _arguments \
':quilt command:(add files import previous setup annotate fold mail push
snapshot applied fork new refresh top delete graph next remove unapplied
diff grep patches rename upgrade edit header pop series)' \
- '*::file:_files'
+ '*::subcmd:->subcmd' && return 0
+
+case "$state" in
+ (subcmd)
+
+ case "$words[1]" in
+ (applied|delete|files|graph|header|next|previous|refresh|unapplied)
+ _wanted -V 'patches' expl 'patch' compadd ${(f)"$(quilt series)"}
+ ;;
+ (push)
+ _wanted -V 'unapplied patches' expl 'patch' compadd ${(f)"$(quilt unapplied)"}
+ ;;
+ (pop)
+ _wanted -V 'applied patches' expl 'patch' compadd ${(f)"$(quilt applied)"}
+ ;;
+ (*)
+ _files
+ ;;
+ esac
+ ;;
+esac