#/bin/bash # # Get selection text and go to window directory # selection="$(xclip -o)" # Copied from https://odysee.com/@Luke:7/plumbing-in-linux-la-plan-9-from-bell:e pid=$(xprop -id "$(xprop -root | awk '/_NET_ACTIVE_WINDOW\(WINDOW\)/{print $NF}')" | grep -m 1 PID | cut -d " " -f 3) pid1=$(pstree -lpA "$pid" | tail -n 1 | awk -F'---' '{print $NF}' | sed -re 's/[^0-9]//g') cd "$(readlink /proc/"$pid1"/cwd)" wname="$(cat /proc/"$pid"/comm)" if [ $wname == "terminator" ]; then xdotool key Control+Alt+Page_Up sleep 0.1 cd "$(cat /tmp/plumb-cwd)" fi # # Create jgmenu menu # menu="" function matches() { echo "$selectoin" | grep "$1" >/dev/null 2>&1 } #matches "[[:alnum:]]*" && menu+="Run,echo 2\n" # # Execution menu option # if [ -z $menu ]; then action="1" else action=$(echo -ne "Open,echo 1\n$menu" | jgmenu --vsimple --at-pointer) fi case "$action" in 1) xdg-open "$selection" ;; *) notify-send "Bad action!" ;; esac