Tab/window management with titles
Do you get lost managing multiple tabs or windows in your terminal emulator? If so, this trick might be handy to your shell toolbox.
Define a function like this in your shell profile
function title {
echo -ne "\033]0;"$*"\007"
}
And then when you open your all important terminal window or tab, call the function and pass a string to it like so:
$ title <title string>
Viola, you have a handy way of identifying your terminal window/tab and not be lost in a forest of tabs or windows.
Isn't this neat?
Now, let's explain this function a bit. echo
needs no introduction. -n
stands tells echo not to print a new-line after the message. -e
tells echo to interpret escape sequences.
The trick that makes this work is the text flanked by xterm escape sequences and sequences themselves.
\033
Escape
\077
Bell
]0;
Identifier for window title and icon
"$*"
String that contains all arguments passed to echo
Most terminal emulators support these xterm sequences. I tested in iterm and it works beautifully. Go ahead, try it out and help yourself navigate the terminal tab/window maze.
References:
https://tldp.org/HOWTO/Xterm-Title-3.html
Stackoverflow threads on this topic.