| delorie.com/archives/browse.cgi | search |
| X-Recipient: | archive-cygwin AT delorie DOT com |
| X-SWARE-Spam-Status: | No, hits=-2.5 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,KHOP_THREADED,NML_ADSP_CUSTOM_MED,RCVD_IN_HOSTKARMA_NO,SPF_HELO_PASS,TW_HR,T_RP_MATCHES_RCVD |
| X-Spam-Check-By: | sourceware.org |
| To: | cygwin AT cygwin DOT com |
| From: | Andy <AndyMHancock AT gmail DOT com> |
| Subject: | Re: Bashrc distinguish between mintty and x-windows xterm |
| Date: | Wed, 20 Jun 2012 03:08:07 +0000 (UTC) |
| Lines: | 37 |
| Message-ID: | <loom.20120620T050746-6@post.gmane.org> |
| References: | <loom DOT 20120522T023835-645 AT post DOT gmane DOT org> <0105D5C1E0353146B1B222348B0411A20A770C7BB5 AT NIHMLBX02 DOT nih DOT gov> |
| Mime-Version: | 1.0 |
| User-Agent: | Loom/3.14 (http://gmane.org/) |
| X-IsSubscribed: | yes |
| Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
| List-Id: | <cygwin.cygwin.com> |
| List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
| List-Archive: | <http://sourceware.org/ml/cygwin/> |
| List-Post: | <mailto:cygwin AT cygwin DOT com> |
| List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
| Sender: | cygwin-owner AT cygwin DOT com |
| Mail-Followup-To: | cygwin AT cygwin DOT com |
| Delivered-To: | mailing list cygwin AT cygwin DOT com |
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
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |