Web lists-archives.com

Re: [Mingw-msys] Re: Re: Re: Re: Howto obtain a full Windows path from a shell command?

On Monday 19 April 2010 15:43:49 David A. Cobb wrote:

[No need to cc me separately, thanks David; I follow the list]

> > Huh?  Certainly, avoid RXVT like the plague; use a native Win32
> > console, either standalone, or driven through Console2.
> Please, please, why??  I quite like RXVT and I don't see any
> problems with it.

Many others do.  RXVT expects stdio streams to be attached to ptys, 
but MSW has no such thing.  MSYS emulates them with pipes, which 
behave as regular file streams.  Thus, isatty(3) returns false, 
(where for a pty or a real tty it *should* return true), and I/O 
buffering will be set up incorrectly for the stdio streams.  This 
usually causes interactive programs to misbehave -- badly.

> But what is "Console2". 

Greg has already answered that; JFGI, and it's the first hit.

> > $TERM isn't really a good choice for identifying an MSYS
> > environment, (it is too ubiquitous); something MSYS specific,
> > such as $MSYSTEM, would surely be a better choice.
> I agree, TERM was not a great choice for the MSYS folks.

$TERM is perfectly good, and the correct choice, for the purpose it 
is intended, (and as designated by the original MSYS developers); it 
just isn't a great choice for *your* (very different) purpose.

> IMNSHO, however, the _right_ choice would be to set "MACHTYPE" to
> whatever a configure scriipt expects when parsing an MSYS build.
>  It's no "trick" at all -- MACHTYPE already has the desired
> semantics.

A "not so humble opinion" maybe, but perhaps not so astute!  As I've 
already pointed out in a previous follow-up, $OSTYPE would likely be 
a better choice, (it would tell you "msys" directly, unlike $MACHTYPE 
which you would have to parse further), but it and $MACHTYPE alike, 
exhibit their own particular disadvantages:--

* Both are bash-isms, therefore not guaranteed to be defined in any
  context, other than within a bash shell.

* Neither is exported, (unless you make it so), and therefore may
  not be visible in your emacs process context, even if launched by
  a bash shell; (they will be automatically recreated within any
  bash shell you subsequently spawn, but they don't propagate).


Mingw-msys mailing list