3 # wraps our calling the secure shell and lets us pick our credentials.
5 source "$FEISTY_MEOW_LOADING_DOCK/custom/scripts/pick_credentials.sh"
7 if [ -z "$PRIOR_TERMINAL_TITLE" ]; then
8 # save the former terminal title if we're running in X with xterm.
10 which xprop &>/dev/null
12 if [[ "$TERM" =~ .*"xterm".* ]]; then
13 PRIOR_TERMINAL_TITLE="$(xprop -id $WINDOWID | perl -nle 'print $1 if /^WM_NAME.+= \"(.*)\"$/')"
18 # force the TERM variable to a more generic version for other side.
19 # we don't want the remote side still thinking it's running xterm.
22 #hmmm: it would be good to set an interrupt handler here and
23 # trap ctrl-c, since otherwise we are getting exited from and losing a chance
24 # to reset the terminal title. this actually happens a lot, since some X11
25 # or other background process is left running and the ssh never actually quits,
26 # forcing one to hit ctrl-c.
28 if [ ! -z "$keyfile" ]; then
29 \ssh -i "$keyfile" -X -C $*
37 # we don't want to emit anything extra if this is being driven by git.
38 if [ -z "$(echo $* | grep git)" ]; then
39 # re-run the terminal labeller after coming back from ssh.
40 # we check the exit value because we don't want to update this for a failed connection.
41 if [ -z "$PRIOR_TERMINAL_TITLE" ]; then
42 echo prior title nil new label
43 bash $FEISTY_MEOW_SCRIPTS/tty/label_terminal_with_infos.sh
45 echo "using old prior title of '$PRIOR_TERMINAL_TITLE'"
46 bash $FEISTY_MEOW_SCRIPTS/tty/set_term_title.sh "$PRIOR_TERMINAL_TITLE"
47 # remove the value for this, since we did our job on it.
48 unset PRIOR_TERMINAL_TITLE