screen-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [screen-devel] Need help reading MarkProcess()


From: Sadrul Habib Chowdhury
Subject: Re: [screen-devel] Need help reading MarkProcess()
Date: Wed, 24 Feb 2010 03:45:04 -0500
User-agent: Mutt/1.5.18 (2008-05-17)

* address@hidden had this to say on [22 Feb 2010, 22:19:51 -0700]:
> 
> 
> On Sun, 21 Feb 2010 21:15:08 -0500 Sadrul Habib Chowdhury
> <address@hidden> writes:
> > * address@hidden had this to say on [21 Feb 2010, 16:58:14 -0700]:
> > > 
> > > I'm trying to update the docs in regards to the new keybindings 
> > for
> > > copy-mode. Inside mark.c, I found the the MarkProcess() routine, 
> > and
> > > inside that is the large switch by the processchar label. My 
> > problem is
> > > that I'm having problems understanding some the cases. For 
> > example, on
> > > lines 667 through 669, I get "case 'j'", that's a literal 
> > keypress. I get
> > > "case '\016', that can come from any ASCII table. But I don't get 
> > "case
> > > '0216'". I don't know where to look these up.
> > 
> > '0216' in copy-mode represents the 'down' arrow key.
> > 
> > > I say this because on lines 667 and 696, they both have comments 
> > of /*
> > > M-C-p */. I would assume the two different cases of 0216 and 0220 
> > can't
> > > resolve to the same key combination.
> > 
> > That seems to be a typo, as '0220' represents the 'up' arrow key.
> > 
> > > Can someone point me to a table or some kind of (preferably Linux)
> > > application that can help me look up these four digit numbers? TIA
> > 
> > In this case, the values are defined in term.c, for 'ku' and 'kd' 
> > keys.
> > The KMAPMDEF specifies the code screen will generate when the key is
> > pressed in copy-mode.
> 
> I see 'ku' in term.c, and I understand that that is the termcap name for
> Cursor Up . I see that KMAPMDEF ties 0220 to that termcap. But I'm still
> not seeing why 0220? Why not 258 or 31337?

I can't say I know for sure, but I think the purpose is to keep the
likewise values similar, e.g. ctrl+p is 020, and up arrow is '0220' (i.e.
020 with the eighth bit set). Similarly, down arrow is '0216' (which is
ctrl+n with the eighth bit set), 'end' is '0205' (ctrl+e with eighth bit
set), 'home' is '0201' (ctrl+a with eighth bit set) etc.

Cheers.
Sadrul





reply via email to

[Prev in Thread] Current Thread [Next in Thread]