X-Git-Url: http://git.iain.cx/?p=profile.git;a=blobdiff_plain;f=.profile.d%2Fprompt.bashrc;fp=.profile.d%2Fprompt.bashrc;h=e67a8fd15d2e5f2d3d7b27832ae9496981590d2a;hp=da94e9713961f88393172d8c7753cde0270e0d7e;hb=8f2c4b17bd7ca83ecf043c5c5e2d05edc91a1cd6;hpb=2f4249cac9aa299fd3e2c36b7b6e17c19ff92854 diff --git a/.profile.d/prompt.bashrc b/.profile.d/prompt.bashrc index da94e97..e67a8fd 100644 --- a/.profile.d/prompt.bashrc +++ b/.profile.d/prompt.bashrc @@ -1,48 +1,13 @@ -# Set the title of an xterm to the hostname unless the remote IP is matched by -# a regular expression in ~/.ssh/forwarded. -SSH_FORWARDED=$(get_remote_ip) -if [ ! -z "$SSH_FORWARDED" ]; then - if [ "$SSH_FORWARDED" = "localhost" ]; then - SSH_FORWARDED= - elif [ -f ${PROFILE_HOME:-~}/.ssh/forwarded ]; then - for forwarded in $(< ${PROFILE_HOME:-~}/.ssh/forwarded); do - if echo "$SSH_FORWARDED" | grep "$forwarded" &>/dev/null; then - SSH_FORWARDED= - fi - done - unset forwarded - fi - [ ! -z "$SSH_FORWARDED" ] && SSH_FORWARDED=" (from $(get_remote_ip -n))" -fi - -# Unscientific check for grid jobs. -case ${SSH_CLIENT##* } in - ""|22|2222);; - *) SSH_FORWARDED="$SSH_FORWARDED [grid]" -esac - -info="$HOSTNAME$SSH_FORWARDED" - -# Check for vim. -vimchild=" [vim]" -if ps -o comm= -p $PPID 2>/dev/null | grep '^vim*$' &>/dev/null; then - # Clear [vim] when exiting. - trap "echo -ne '\\033]0;$info\\033\\0134'" exit - info="$info$vimchild" -fi -if [ "${TERM##screen}" = "$TERM" -o "${TERM%%-bce}" = "$TERM" ]; then - PROMPT_COMMAND="echo -ne '\033]0;$info\033\0134\r\033[K'" -else - PROMPT_COMMAND='echo -ne "\033k\033\0134"' -fi -unset blank info vimchild SSH_FORWARDED +_prompt_command_escape=1 # Actual dtterm barfs on escape sequences. if [ "$TERMINAL_EMULATOR" = "dtterm" ]; then - unset PROMPT_COMMAND + unset _prompt_command_escape fi # As does screen on an ancient Solaris host. if [ -n "$OLDSOLARIS" -a ! "${TERM##screen}" = "$TERM" ]; then - unset PROMPT_COMMAND + unset _prompt_command_escape fi + +PROMPT_COMMAND='for snippet in ${PROFILE_HOME:-~}/.prompt.d/*.prompt; do . $snippet; done; unset snippet'