summaryrefslogtreecommitdiff
path: root/dotfiles/system/.local/bin/samedir
diff options
context:
space:
mode:
Diffstat (limited to 'dotfiles/system/.local/bin/samedir')
-rwxr-xr-xdotfiles/system/.local/bin/samedir10
1 files changed, 10 insertions, 0 deletions
diff --git a/dotfiles/system/.local/bin/samedir b/dotfiles/system/.local/bin/samedir
new file mode 100755
index 0000000..371ec64
--- /dev/null
+++ b/dotfiles/system/.local/bin/samedir
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+# Open a terminal window in the same directory as the currently active window.
+
+PID=$(xprop -id "$(xprop -root | xprop -root | sed -n "/_NET_ACTIVE_WINDOW/ s/^.*# // p")" | sed -n "/PID/ s/^.*= // p")
+PID="$(pstree -lpA "$PID")"
+PID="${PID##*"${SHELL##*/}"(}"
+PID="${PID%%)*}"
+cd "$(readlink /proc/"$PID"/cwd)" || return 1
+"$TERMINAL"