From 6f2bb55398b1bde3a822038f077e0afeac8c01f8 Mon Sep 17 00:00:00 2001 From: Ryan McCuaig Date: Tue, 2 Aug 2011 17:17:51 -0700 Subject: [PATCH] Add support for OS X Lion's restore windows after quit By default, Lion's Terminal.app will re-open all windows after quitting and restarting the app, but only in bash using a chpwd hook found in /etc/bashrc. See also http://superuser.com/questions/313650/resume-zsh-terminal-os-x-lion --- plugins/osx/osx.plugin.zsh | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/plugins/osx/osx.plugin.zsh b/plugins/osx/osx.plugin.zsh index 682bb2667..83ffddeb3 100644 --- a/plugins/osx/osx.plugin.zsh +++ b/plugins/osx/osx.plugin.zsh @@ -1,8 +1,12 @@ # ------------------------------------------------------------------------------ # FILE: osx.plugin.zsh # DESCRIPTION: oh-my-zsh plugin file. -# AUTHOR: Sorin Ionescu (sorin.ionescu@gmail.com) -# VERSION: 1.0.1 +# AUTHORS: sorin-ionescu +# benlangfeld +# robbyrussell +# betawaffle +# rgm +# VERSION: 1.0.2 # ------------------------------------------------------------------------------ @@ -97,3 +101,17 @@ function trash() { IFS=$temp_ifs } +if [[ $TERM_PROGRAM == "Apple Terminal" ]] && [[ -z "$INSIDE_EMACS" ]] { + autoload -U add-zsh-hook + + function lion_resume_chpwd { + # add support for OS X Lion window resume on Terminal.app relaunch + # straight port from /etc/bashrc on Lion + local SEARCH=' ' + local REPLACE='%20' + local PWD_URL="file://$HOSTNAME${PWD//$SEARCH/$REPLACE}" + printf '\e]7;%s\a' "$PWD_URL" + } + + add-zsh-hook chpwd lion_resume_chpwd +}