diff options
author | Toby Vincent <tobyv@tobyvin.dev> | 2023-10-08 23:39:58 -0500 |
---|---|---|
committer | Toby Vincent <tobyv@tobyvin.dev> | 2023-10-08 23:39:58 -0500 |
commit | 5997f74da8b76f54005522d44902b240504f48da (patch) | |
tree | dfa0ca6eaa70cb1d47f8dd2378e004f19f1a4223 /ssh/.local | |
parent | f97da8f36bc036155875409067599b472fe8c70b (diff) |
fix(tmux): improve remote xdg-open command
Diffstat (limited to 'ssh/.local')
-rwxr-xr-x | ssh/.local/bin/ssh-open | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/ssh/.local/bin/ssh-open b/ssh/.local/bin/ssh-open index 276360c..01b650c 100755 --- a/ssh/.local/bin/ssh-open +++ b/ssh/.local/bin/ssh-open @@ -1,8 +1,15 @@ #!/usr/bin/sh -HOSTNAME=$(uname -n) +if [ -n "$SSH_CLIENT" ]; then + HOSTNAME=$(uname -n) -printf '%s' "$1" | sed \ - -e "s/localhost/$HOSTNAME/" \ - -e "s/127\(\.[0-9]\{1,3\}\)\{3\}/$HOSTNAME/" | - xargs -I{} ssh -l "$USER" -p 2222 localhost "xdg-open '{}'" + printf '%s' "$@" | + sed -e "s/localhost/$HOSTNAME/" -e "s/127\(\.[0-9]\{1,3\}\)\{3\}/$HOSTNAME/" | + if [ -S "$XDG_RUNTIME_DIR"/xdg-open.socket ] && command -v nc >/dev/null; then + nc -UN "$XDG_RUNTIME_DIR"/xdg-open.socket + else + xargs -I{} ssh -l "$USER" -p 2222 localhost "xdg-open '{}'" + fi +else + $(command -vp xdg-open) "$@" +fi |