Re: BUG #11986: psql uses pager inside Emacs shell buffer (not a terminal) - Mailing list pgsql-bugs

From Tom Lane
Subject Re: BUG #11986: psql uses pager inside Emacs shell buffer (not a terminal)
Date
Msg-id 26947.1417573493@sss.pgh.pa.us
Whole thread Raw
In response to Re: BUG #11986: psql uses pager inside Emacs shell buffer (not a terminal)  (Bruce Momjian <bruce@momjian.us>)
Responses Re: BUG #11986: psql uses pager inside Emacs shell buffer (not a terminal)
Re: BUG #11986: psql uses pager inside Emacs shell buffer (not a terminal)
List pgsql-bugs
Bruce Momjian <bruce@momjian.us> writes:
> On Mon, Nov 17, 2014 at 09:34:34AM +0000, eda@waniasset.com wrote:
>> It would be friendler for psql to be aware of this and not use a pager if
>> running inside an Emacs shell buffer, or other dumb terminal: check if $TERM
>> is set to 'dumb'.

> This is an interesting idea.  What are the odds that a "dumb" terminal
> is inside Emacs?  Is there another environment variable set by Emacs
> that we can check?

A truly dumb terminal would be where you'd need a pager the most,
so I'm not enamored of this specific test proposal.  If there's some
more-specific way to detect that stdout is an Emacs buffer, I'd be for it.

A quick check here shows a couple of different possibilities in the
environment seen in a shell buffer:

EMACS=t
INSIDE_EMACS=23.1.1,comint

I am not real sure of the properties of either of these variables
though, in particular not whether they are present in all versions
of Emacs.  (The value of the second one seems to be an Emacs version
identifier, fwiw.)  Another question is whether any effort gets made
to unset them in processes that are descendants of an Emacs but are
not connected to a shell-buffer pty.

            regards, tom lane

pgsql-bugs by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: BUG #11986: psql uses pager inside Emacs shell buffer (not a terminal)
Next
From: Christopher Browne
Date:
Subject: Re: BUG #11986: psql uses pager inside Emacs shell buffer (not a terminal)