From 78b248c89894bf4014ac05a8e762df657499af42 Mon Sep 17 00:00:00 2001 From: Rokosun <79040025+futureisfoss@users.noreply.github.com> Date: Tue, 15 Nov 2022 13:19:06 +0000 Subject: [PATCH] Improve sd script Now sd will also work on apps like mpv and zathura --- .local/bin/sd | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.local/bin/sd b/.local/bin/sd index 7e09bf6e..60b196ce 100755 --- a/.local/bin/sd +++ b/.local/bin/sd @@ -2,10 +2,8 @@ # 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#*lf(}" -PID="${PID%%)*}" -cd "$(readlink /proc/"$PID"/cwd)" || return 1 +PID=$(xprop -id "$(xprop -root | sed -n "/_NET_ACTIVE_WINDOW/ s/^.*# // p")" | sed -n "/PID/ s/^.*= // p") +PID=$(pstree -lpATna "$PID" | grep -v '\-\(lf,[0-9]\+ -server\|(st-urlhandler,[0-9]\+)\|xclip,[0-9]\+\)' | sed '$s/.*,\([0-9]\+\).*/\1/;t;d') +cwd=$(readlink /proc/"$PID"/cwd) +[ "$PWD" = "$cwd" ] || cd "$cwd" || exit 1 "$TERMINAL"