From: Eduardo D'Avila Date: Sat, 22 Jun 2013 16:45:38 GMT Subject: Re: [PATCH 2/4] git-prompt.sh: refactor colored prompt code Message-ID: In-Reply-To: <354a860e12a3463ce5d031c0dc46d095841f717d.1371780085.git.erdavila@gmail.com> 2013/6/22 Øystein Walle : > I've gotten the impression it's better to use tput to generate the escape > sequences instead of hardcoding them. So something like: > > local c_red='\['"$(tput setaf 1)"'\]' > local c_green='\['"$(tput setaf 2)"'\]' > local c_green='\['"$(tput setaf 4)"'\]' > local c_clear='\['"$(tput sgr0)"'\]' > > which is technically cleaner, if not visually. > > The problem with that approach is that tput will be run several times for > each prompt, so it would be best if the color variables were global. Another > thing is that you rely on tput being available. Are there any guidelines regarding global shell script variables? I'm considering doing this: __git_c_red="\[$(tput setaf 1 || echo -e '\e[31m')\]" which handles the case where tput is not available. Eduardo