summaryrefslogtreecommitdiff
path: root/plugins/pow/pow.plugin.zsh
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/pow/pow.plugin.zsh')
-rw-r--r--plugins/pow/pow.plugin.zsh41
1 files changed, 30 insertions, 11 deletions
diff --git a/plugins/pow/pow.plugin.zsh b/plugins/pow/pow.plugin.zsh
index 399a54cb0..d85c88777 100644
--- a/plugins/pow/pow.plugin.zsh
+++ b/plugins/pow/pow.plugin.zsh
@@ -8,21 +8,21 @@
# Supports command completion.
#
# If you are not already using completion you might need to enable it with
-#
+#
# autoload -U compinit compinit
#
# Changes:
#
-# Defaults to the current application, and will walk up the tree to find
+# Defaults to the current application, and will walk up the tree to find
# a config.ru file and restart the corresponding app
#
-# Will Detect if a app does not exist in pow and print a (slightly) helpful
+# Will Detect if a app does not exist in pow and print a (slightly) helpful
# error message
-rack_root_detect(){
+rack_root(){
setopt chaselinks
- local orgdir=$(pwd)
- local basedir=$(pwd)
+ local orgdir="$(pwd)"
+ local basedir="$(pwd)"
while [[ $basedir != '/' ]]; do
test -e "$basedir/config.ru" && break
@@ -30,8 +30,13 @@ rack_root_detect(){
basedir="$(pwd)"
done
- builtin cd $orgdir 2>/dev/null
+ builtin cd "$orgdir" 2>/dev/null
[[ ${basedir} == "/" ]] && return 1
+ echo $basedir
+}
+
+rack_root_detect(){
+ basedir=$(rack_root)
echo `basename $basedir | sed -E "s/.(com|net|org)//"`
}
@@ -51,16 +56,30 @@ kapow(){
compctl -W ~/.pow -/ kapow
powit(){
- local basedir=$(pwd)
+ local basedir="$(pwd)"
local vhost=$1
[ ! -n "$vhost" ] && vhost=$(rack_root_detect)
if [ ! -h ~/.pow/$vhost ]
- then
- echo "pow: Symlinking your app with pow. ${vhost}"
- [ ! -d ~/.pow/${vhost} ] && ln -s $basedir ~/.pow/$vhost
+ then
+ echo "pow: Symlinking your app with pow. ${vhost}"
+ [ ! -d ~/.pow/${vhost} ] && ln -s "$basedir" ~/.pow/$vhost
return 1
fi
}
+powed(){
+ local basedir="$(rack_root)"
+ find ~/.pow/ -type l -lname "*$basedir*" -exec basename {}'.dev' \;
+}
+
+# Restart pow process
+# taken from http://www.matthewratzloff.com/blog/2011/12/23/restarting-pow-when-dns-stops-responding
+repow(){
+ lsof | grep 20560 | awk '{print $2}' | xargs kill -9
+ launchctl unload ~/Library/LaunchAgents/cx.pow.powd.plist
+ launchctl load ~/Library/LaunchAgents/cx.pow.powd.plist
+ echo "restarted pow"
+}
+
# View the standard out (puts) from any pow app
alias kaput="tail -f ~/Library/Logs/Pow/apps/*"