Skip to content

Instantly share code, notes, and snippets.

@wadey
Last active January 13, 2025 14:26
Show Gist options
  • Save wadey/1140259 to your computer and use it in GitHub Desktop.
Save wadey/1140259 to your computer and use it in GitHub Desktop.
Change iTerm2 tab color when using SSH
# Usage:
# source iterm2.zsh
# iTerm2 tab color commands
# https://iterm2.com/documentation-escape-codes.html
if [[ -n "$ITERM_SESSION_ID" ]]; then
tab-color() {
echo -ne "\033]6;1;bg;red;brightness;$1\a"
echo -ne "\033]6;1;bg;green;brightness;$2\a"
echo -ne "\033]6;1;bg;blue;brightness;$3\a"
}
tab-red() { tab-color 255 0 0 }
tab-green() { tab-color 0 255 0 }
tab-blue() { tab-color 0 0 255 }
tab-reset() { echo -ne "\033]6;1;bg;*;default\a" }
function iterm2_tab_precmd() {
tab-reset
}
function iterm2_tab_preexec() {
if [[ "$1" =~ "^ssh " ]]; then
if [[ "$1" =~ "prod" ]]; then
tab-color 255 160 160
else
tab-color 160 255 160
fi
else
tab-color 160 160 255
fi
}
autoload -U add-zsh-hook
add-zsh-hook precmd iterm2_tab_precmd
add-zsh-hook preexec iterm2_tab_preexec
fi
@andremacola
Copy link

Thank you for the reference. I created a fork with an update to customize the color by server and added the option to customize the background.

https://gist.github.com/andremacola/12337455f5dc43a3aa348a5aebcacbcf

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment