X-Git-Url: https://git.madduck.net/etc/zsh.git/blobdiff_plain/33230b65afa1076218abff057d0bbcc7486af0a8..fae90a2a15dde4a7472a5353857f1497c63e00db:/.zsh/zshrc/10-xterm_title?ds=inline

diff --git a/.zsh/zshrc/10-xterm_title b/.zsh/zshrc/10-xterm_title
index b695811..82f311a 100644
--- a/.zsh/zshrc/10-xterm_title
+++ b/.zsh/zshrc/10-xterm_title
@@ -13,14 +13,20 @@ autoload -U add-zsh-hook
 
 __set_xterm_title() {
   emulate -L zsh
+  local typ
   case $TERM in
-    screen)
-      print -nR $'\033k'$1$'\033'\\ 
+    (tmux|tmux-*) typ=tmux;;
+    (screen|screen-*) if [ -n "$TMUX" ]; then typ=tmux else typ=screen fi;;
+    (*) typ=xterm
+  esac
+
+  case "$typ" in
+    (xterm) print -nR $'\033]0;'$*$'\a';;
+    (screen)
+      print -nR $'\033k'$1$'\033'\\
       print -nR $'\033]0;'$2$'\a'
       ;;
-    xterm|rxvt*)
-      print -nR $'\033]0;'$*$'\a'
-      ;;
+    (tmux) print -nR $'\033]2;'$*$'\a';;
   esac
 }
 
@@ -37,7 +43,7 @@ __get_session_flags() {
 __get_standard_prompt() {
   emulate -L zsh
   [[ -z $SSH_CLIENT ]] || print -nP "%m"
-  print -P "%#%25\<..\<%~ $(__get_session_flags)"
+  print -P "@${${(%):-%l}#pts/}%#%25\<..\<%~ $(__get_session_flags)"
 }
 
 _set_plain_xterm_title() {