chiark / gitweb /
dot/shell-rc: Set the window title to something useful.
[profile] / dot / shell-rc
index 67ad457679e5b6e0b615f1fdbea206553d984ccf..0b6e94bc738f3f6ebb591d17146d2903ed684217 100644 (file)
@@ -146,12 +146,19 @@ __mdw_set_prompt () {
   esac
 }
 
+__mdw_xterm_precmd () { printf "\e]2;%s@%s:%s – %s\e\\" "$USER" "$__mdw_host" "$PWD" "$__mdw_shell"; }
+__mdw_xterm_preexec () { printf "\e]2;%s@%s:%s – %s\e\\" "$USER" "$__mdw_host" "$PWD" "$1"; }
+
 __mdw_screen_precmd () { printf "\ek%s\e\\" "$__mdw_shell"; }
 __mdw_screen_preexec () { printf "\ek%s\e\\" "$1"; }
 
 if [ -t 0 ]; then
-  case ${STY+t},${__mdw_precmd_hook+t},${__mdw_preexec_hook+t} in
-    t,t,t)
+  case ${STY+t},${__mdw_precmd_hook+t},${__mdw_preexec_hook+t},${TERM} in
+    ,t,t,xterm*)
+      __mdw_addhook __mdw_precmd_hook __mdw_xterm_precmd
+      __mdw_addhook __mdw_preexec_hook __mdw_xterm_preexec
+      ;;
+    t,t,t,*)
       __mdw_addhook __mdw_precmd_hook __mdw_screen_precmd
       __mdw_addhook __mdw_preexec_hook __mdw_screen_preexec
       ;;