[vox-tech] bash question
Peter Jay Salzman
vox-tech@lists.lugod.org
Mon, 6 May 2002 08:55:55 -0700
mark,
i think i just stumbled onto the answer as you were typing your email.
you must have been sending me extra sensory perception messages. :-)
i THINK this will work:
if [ "$DISPLAY" == ":0.0" ]; then
# Kill the capslock key
/usr/X11R6/bin/xmodmap -e "remove Lock = Caps_Lock"
fi
that is, i believe xmodmap will only execute when the non-login shell was
executed under an X server running on the same machine as the non-login
shell.
pete
begin Mark K. Kim <markslist@cbreak.org>
> I think you can analyze the content of the $DISPLAY variable. As I
> recall, the forwarding was set so that the display is set to :10 or
> above... or something like that (that was using the ssh from ssh.com, not
> openssh, though). I'm not in front of a Linux box so I can't check it at
> the moment...
>
> -Mark
>
> On Mon, 6 May 2002, Peter Jay Salzman wrote:
>
> > hi matt,
> >
> > unfortunately i use X forwarding alot. i would think this situation is
> > very common. i'm surprised the answer is so elusive!
> >
> > also, i think this solution will cause a non-fatal (but annoying)
> > message whenever i use scp (which i use 10, 20 times a day).
> >
> > pete
> >
> >
> > begin Matt Roper <matt@mattrope.com>
> > > If you aren't using X forwarding (i.e. ssh -X), I think you could check
> > > to see if $DISPLAY is set...
> > >
> > > if [ "${DISPLAY}" != "" ]; then
> > > shopt -s checkwinsize
> > > xmodmap -e "remove Lock = Caps_Lock"
> > > fi
> > >
> > >
> > > Matt
> > >
> > >
> > > On Mon, May 06, 2002 at 07:55:42AM -0700, Peter Jay Salzman wrote:
> > > > i have an xmodmap that i'd like to be run when the shell is a
> > > > non-login shell under local X.
> > > >
> > > > i thought it would be something like:
> > > >
> > > > if [ "${TERM}" == "xterm" ]; then
> > > > shopt -s checkwinsize
> > > > xmodmap -e "remove Lock = Caps_Lock"
> > > > fi
> > > >
> > > > but this suffers from ${TERM} being "xterm" when i ssh in from another
> > > > machine running X.
> > > >
> > > > how can i test for "if this shell is being run from X server running on
> > > > THIS machine"?