This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Bashrc distinguish between mintty and x-windows xterm
- From: Andy <AndyMHancock at gmail dot com>
- To: cygwin at cygwin dot com
- Date: Wed, 20 Jun 2012 03:08:07 +0000 (UTC)
- Subject: Re: Bashrc distinguish between mintty and x-windows xterm
- References: <loom.20120522T023835-645@post.gmane.org> <0105D5C1E0353146B1B222348B0411A20A770C7BB5@NIHMLBX02.nih.gov>
Andy wrote:
| Ken Jackson <cygwin <at> jackson.io> writes:
|> ==== Fri, May 25, 2012 at 09:32AM -0400 Buchbinder, Barry
|> (NIH/NIAID) [E] wrote:
|>> Andrew Hancock sent the following at Friday, May 25, 2012 12:42 AM
|>>>Barry, it works flawlessly. Thanks immensely!
|>>
|>> But I forgot to export ThisTerm, otherwise it is always unset when
|>> a subshell is launched.
|>
|> Access to the /proc file system is fast, so you could forgo the
|> variable and access it directly:
|>
|> case "$(< /proc/$PPID/exename)" in
|> */xterm) echo "This is an xterm" ;;
|> */mintty) echo "This is a mintty" ;;
|> esac
|
|Barry, Ken,
|
|Thanks for your valuable scripting examples. It sent me scurrying back to the
|man page to figure out case/esac and command substitution. It's also a good
|reminder of the wealth of detail available in /proc.
For the record, this in .bashrc seems to work well in xterm's white background
and mintty's black background.
case "$(< /proc/$PPID/exename)" in
*/xterm) function setPS1() {
PS1="\[\033]0;\w\007\033[32m\]\u@\h \[\033[35m\w\033[0m\]\n$" ;
echo xterm
} ;;
*/mintty) function setPS1() {
PS1="\[\e]0;\w\a\]\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n\$" ;
echo mintty
} ;;
esac
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple