[comp.windows.news] sun function keys again

george@FRODO.UA.OZ.AU (George) (03/08/90)

with the discusion as to what is SUN doing about NeWS , i feel somewhat
reticent to repost a query about how to program Function keys within NeWS.
seems quite insignificant in comparison to the level of discusion within
this group.
however, i  would appreciate it if someone could point out how to program
a function key to pass ^P for example to tcsh within a psterm window.
i have tried to do this but i havent been able to get it to work. i really
want to be able to R8 (uparrow).
thanks

George Travan " rebel without a clue"		PHONE :  +61 8 2885968
University of Adelaide				Telex : UNIVAD AA89141
G.P.O Box 498 Adelaide  			FAX   : +61 8 244 0464
S.AUSTRALIA  5001     				e_mail: george@frodo.ua.oz.au

sjs@spectral.ctt.bellcore.com (Stan Switzer) (03/09/90)

In article <9003080030.AA13390@frodo.ua.oz> george@FRODO.UA.OZ.AU (George) writes:
> 
> with the discussion as to what is SUN doing about NeWS , i feel somewhat
> reticent to repost a query about how to program Function keys within NeWS.
> seems quite insignificant in comparison to the level of discussion within
> this group.

On the contrary, that is exactly what this group is for.  I was
beginning to thing we'd lost another group to meta-discussions,
flamage, speculation, recriminations, and misinformation.  I wish I
were entirely blameless in this regard....

> however, i  would appreciate it if someone could point out how to program
> a function key to pass ^P for example to tcsh within a psterm window.
> i have tried to do this but i haven't been able to get it to work. i really
> want to be able to R8 (uparrow).

OK, here's the trick:

% "standard" arrow key bindings
/FunctionR8 { dup begin		% UP
    /Name /InsertValue def
    /Action (\033[A) def
end redistributeevent } bindkey
/FunctionR14 { dup begin	% DOWN
    /Name /InsertValue def
    /Action (\033[B) def
end redistributeevent } bindkey
/FunctionR12 { dup begin	% RIGHT
    /Name /InsertValue def
    /Action (\033[C) def
end redistributeevent } bindkey
/FunctionR10 { dup begin	% LEFT
    /Name /InsertValue def
    /Action (\033[D) def
end redistributeevent } bindkey
/FunctionR11 { dup begin	% CENTER (do nothing)
    /Name /InsertValue def
    /Action () def
end redistributeevent } bindkey

Just change the "Action" field to your preferred character sequence.
^P is (\020), ^N is (\016), ^F is (\006), ^B is (\002) in case you
want to continue with the emacs theme.  "vi" users might want to see
if they can make "map" and "map!" do sensible things with the default
sequences generated by these keys.

As for myself, I've long-since given up on arrow keys.  Proper use of
arrow keys involves application intelligence, and until enough
keyboards have arrow keys or enough applications abandon terminal
emulation in favor of real windowing, things just aren't going to
improve much.

Also, this is a stop-gap solution since it remaps the arrow keys
globally.  What you want is for the arrow keys to be remapped
according to the keyboard focus target.  Again, this means application
intelligence will be required.  Ideally, there would be some mechanism
like the X resources database to specify such application
customizations.

Toward a more technical newsgroup,

Stan Switzer  sjs@bellcore.com

P.S.  About the encoding of the Kanji font: I seem to remember being
told that it is based on a Japanese national standard called JIS-1.
It's been a long time, though, so my memory could be faulty.  As for
whether there is any logic in the sequence, my Chinese friends cannot
discern any sense in it except that the names of various birds seem to
be clumped in groups.  Perhaps there is a relationship to the
Japanese pronunciation.