window_reset=
}
- # Sets the window title. Works with screen, xterm and rxvt.
+ # Sets the window title. Works with screen, xterm and rxvt. (V) escapes
+ # all non-printable characters. Thanks to Mikachu in #zsh on Freenode
+ # (2010-08-07 17:09 CEST).
if [[ $TERM == screen* ]]; then
window_title() {
- print -n "\ek$1\e\\"
+ print -n "\ek${(V)1}\e\\"
}
elif [[ $TERM == xterm* || $TERM == rxvt* ]]; then
window_title() {
- print -n "\e]2;$1\e\\"
+ print -n "\e]2;${(V)1}\e\\"
}
else
# Fallback if another TERM is used.