Skip to content

Instantly share code, notes, and snippets.

@chriha
Created August 25, 2021 07:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chriha/642e8dd09215efa3e8d0a8d889a0ed3b to your computer and use it in GitHub Desktop.
Save chriha/642e8dd09215efa3e8d0a8d889a0ed3b to your computer and use it in GitHub Desktop.
Colorize tabs according to environment
# 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
tab-color 255 0 0
elif [[ "$1" =~ "stage" ]]; then
tab-color 255 193 7
else
tab-color 160 255 160
fi
else
tab-color 33 150 243
fi
}
autoload -U add-zsh-hook
add-zsh-hook precmd iterm2_tab_precmd
add-zsh-hook preexec iterm2_tab_preexec
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment