diff --git a/functions/terminal.zsh b/functions/terminal.zsh index 424ec73f..cac73919 100644 --- a/functions/terminal.zsh +++ b/functions/terminal.zsh @@ -31,6 +31,7 @@ function set-tab-title() { fi } +# Sets the tab and window titles with the command name. function set-title-by-command() { emulate -L zsh setopt localoptions extended_glob @@ -69,12 +70,15 @@ autoload -Uz add-zsh-hook # Sets the tab and window titles before the prompt is displayed. function set-title-precmd { - if check-bool "$AUTO_TITLE"; then + if [[ "$TERM_PROGRAM" != "Apple_Terminal" ]] && check-bool "$AUTO_TITLE"; then set-window-title "${(%):-%~}" for kind in tab screen; do # Left-truncate the current working directory to 15 characters. set-${kind}-title "${(%):-%15<...<%~%<<}" done + else + # Set Apple Terminal current working directory. + printf '\e]7;%s\a' "file://$HOST${PWD// /%20}" fi } add-zsh-hook precmd set-title-precmd