Skip to content

Instantly share code, notes, and snippets.

@wadey
Last active March 10, 2024 00:32
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
@lacostenycoder
Copy link

How do I use this?

@mitsh
Copy link

mitsh commented Oct 10, 2023

thanks for sharing this! nice job. If you put some comments to explain some lines, that would be great.

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