|
|
@ -6,6 +6,10 @@ |
|
|
|
CMD=$TERMINAL |
|
|
|
CMD=$TERMINAL |
|
|
|
CWD='' |
|
|
|
CWD='' |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if [ ! -z "$1" ]; then |
|
|
|
|
|
|
|
CMD="${CMD} -e $1" |
|
|
|
|
|
|
|
fi; |
|
|
|
|
|
|
|
|
|
|
|
# Get window ID |
|
|
|
# Get window ID |
|
|
|
ID=$(xdpyinfo | grep focus | cut -f4 -d " ") |
|
|
|
ID=$(xdpyinfo | grep focus | cut -f4 -d " ") |
|
|
|
|
|
|
|
|
|
|
@ -14,16 +18,16 @@ PID=$(xprop -id $ID | grep -m 1 PID | cut -d " " -f 3) |
|
|
|
|
|
|
|
|
|
|
|
# Get last child process (shell, vim, etc) |
|
|
|
# Get last child process (shell, vim, etc) |
|
|
|
if [ -n "$PID" ]; then |
|
|
|
if [ -n "$PID" ]; then |
|
|
|
TREE=$(pstree -lpA $PID | tail -n 1) |
|
|
|
TREE=$(pstree -lpA $PID | tail -n 1) |
|
|
|
PID=$(echo $TREE | awk -F'---' '{print $NF}' | sed -re 's/[^0-9]//g') |
|
|
|
PID=$(echo $TREE | awk -F'---' '{print $NF}' | sed -re 's/[^0-9]//g') |
|
|
|
|
|
|
|
|
|
|
|
# If we find the working directory, run the command in that directory |
|
|
|
# If we find the working directory, run the command in that directory |
|
|
|
if [ -e "/proc/$PID/cwd" ]; then |
|
|
|
if [ -e "/proc/$PID/cwd" ]; then |
|
|
|
CWD=$(readlink /proc/$PID/cwd) |
|
|
|
CWD=$(readlink /proc/$PID/cwd) |
|
|
|
fi |
|
|
|
fi |
|
|
|
fi |
|
|
|
fi |
|
|
|
if [ -n "$CWD" ]; then |
|
|
|
if [ -n "$CWD" ]; then |
|
|
|
cd "$CWD" && $CMD |
|
|
|
cd "$CWD" && $CMD |
|
|
|
else |
|
|
|
else |
|
|
|
$CMD |
|
|
|
$CMD |
|
|
|
fi |
|
|
|
fi |
|
|
|