summaryrefslogtreecommitdiffstats
path: root/scripts/completions/zsh/_makeobj
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commitbd9e6617827818fd043452c08c606f07b78014a0 (patch)
tree425bb4c3168f9c02f10150f235d2cb998dcc6108 /scripts/completions/zsh/_makeobj
downloadtdesdk-bd9e6617827818fd043452c08c606f07b78014a0.tar.gz
tdesdk-bd9e6617827818fd043452c08c606f07b78014a0.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdesdk@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'scripts/completions/zsh/_makeobj')
-rw-r--r--scripts/completions/zsh/_makeobj30
1 files changed, 30 insertions, 0 deletions
diff --git a/scripts/completions/zsh/_makeobj b/scripts/completions/zsh/_makeobj
new file mode 100644
index 00000000..738a952c
--- /dev/null
+++ b/scripts/completions/zsh/_makeobj
@@ -0,0 +1,30 @@
+#compdef makeobj
+
+local index olddir dir subdir
+
+olddir=$PWD
+index="$words[(I)-[fCI]]"
+if ! ((index)); then
+ if [ ! -f Makefile ]; then
+ if [ -n "$OBJ_SUBDIR" ]; then
+ dir=$PWD
+ subdir=.
+ while [ -n "$dir" -a $dir != '/' -a ! -f $dir/$OBJ_SUBDIR/$subdir/Makefile ]; do
+ dir=$dir(:h)
+ subdir=$dir(:t)/$subdir
+ done
+ if -f $dir/$OBJ_SUBDIR/$subdir/Makefile; then
+ cd $dir/$OBJ_SUBDIR/$subdir
+ fi
+ elif [ -n "$OBJ_REPLACEMENT" ]; then
+ dir=$(echo $PWD | sed -e "$OBJ_REPLACEMENT")
+ if [ -f $dir/Makefile ]; then
+ cd $dir
+ fi
+ fi
+ fi
+fi
+
+_make
+
+cd $olddir