On Mon, 28 Apr 2008, Sven Hartge wrote:

Um 06:41 Uhr am 27.04.08 schrieb Thomas Dickey:

The problem: since the update, Pos1 and End don't work anymore inside
screen. The only changes between a working and a buggy environment are:

thanks - will check.  I would have noticed this, but rxvt + screen on
my Debian/testing doesn't work together.  The underlying problem is that
some keys (home/end, etc) are #define'd in rxvt's sources and won't
necessarily match on other systems.

Interesting. I use

rxvt-xpm -geometry 99x35 -bg black -fg grey67 -fn
-misc-fixed-medium-r-normal-*-*-200-*-*-c-*-iso8859-15 -sr -sl 5000 -ls

and never had any problems with screen (on a remote server connected via
ssh) until now.

If you tell me, how to display the different codes Pos1 and End produce
with TERM=screen and TERM=screen.rxvt, I may me able to aid your debugging
efforts.

I spent some time last night investigating it.  The underlying issue is
that screen does more than would be apparent from this paragraph:

       When screen tries  to  figure  out  a  terminal  name  for
       itself, it first looks for an entry named "screen.<term>",
       where <term> is the contents of your $TERM  variable.   If
       no such entry exists, screen tries "screen" (or "screen-w"
       if the terminal is wide (132 cols or more)).  If even this
       entry cannot be found, "vt100" is used as a substitute.

I'd already noticed that it did something odd with home/end keys, but
when making screen.rxvt saw that it "ignored" the values for kf1-kf4
in screen.rxvt -- so I set values to match what screen actually passed.

screen sees the key-definitions in "screen.<term>" and translates them to the corresponding strings in "screen", rather than passing them through unchanged. So it saw that kfnd was defined for \E[1~ in "screen.rxvt",
it mapped that to the "screen" kfnd.

Here's an improved definition:

screen+fkeys|function-keys according to screen,
        kend=\E[4~, kf1=\EOP, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kfnd@,
        khome=\E[1~, kslt@,
screen.rxvt|screen in rxvt,
        bw,
        cvvis@, flash@, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
        kcuu1=\EOA, use=screen+fkeys, use=vt100+enq,
        use=rxvt+pcfkeys, use=vt220+keypad, use=screen,


--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net



--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to