OS X Lion具有“恢复”功能,即,当您重新打开应用程序时,它将恢复所有窗口及其内容。这同样适用于Terminal。但是,如果您使用Zsh而不是Bash,则它不会还原打开的目录。我怎样才能解决这个问题?
更新:由于注释中提到的原因,这并不完全正确。使用下面的答案。感谢@ChrisPage付出了更多努力:)
答案可以通过反向工程找到bash如何在其中进行/etc/bashrc
。我从网上尝试了许多方法,但苹果公司的方法似乎效果最好(见图)。
在您.zshrc
添加以下内容
# Set Apple Terminal.app resume directory
if [[ $TERM_PROGRAM == "Apple_Terminal" ]] && [[ -z "$INSIDE_EMACS" ]] {
function chpwd {
local SEARCH=' '
local REPLACE='%20'
local PWD_URL="file://$HOSTNAME${PWD//$SEARCH/$REPLACE}"
printf '\e]7;%s\a' "$PWD_URL"
}
chpwd
}
祝您恢复愉快。
为了澄清起见,此答案与OS X Lion的Terminal.app首选项中的神秘消息有关:
**程序使用转义序列将当前工作目录通知终端。您可能需要配置外壳程序或其他程序才能启用此行为。*
当您将zsh用作shell时,此答案有效。苹果已经实施了bash的终端恢复。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句