I've tested the function sysgetkey() from the libregutil.so library under Ubuntu 12.4 (32-bit) with Regina 3.9 and charset de_DE.UTF-8 via the following demo Rexx program:
/ REXX Test sysgetkey() /
if rxfuncquery('SYSLoadFuncs')=1 then ,
if rxfuncadd('SYSLoadFuncs','regutil','SYSLoadFuncs')>0 then exit
call sysloadfuncs
do until key='X'
key=sysgetkey(,0); say / echo + NL /
say c2x(key)||'---'||time('E') / return value + elipsed time /
end
TMP=rxfuncdrop('SYSLoadFuncs')
return 0
This key sequence was used:
a
ä
Cursor Right
Cursor Left
Cursor Right
Cursor Left
Cursor Left
Cursor Up
Cursor Up
Cursor Down
Cursor Down
Insert
Insert
Delete
Delete
Enter
Enter
F10
F10
Shift-X
The log is attached.
Unfortunately the result is not, what I would expect.
That a key produces a sequence of codes and not one, which you have to retrieve via multiple calls of sysgetkey(), is uncommon and impractical but mentioned in the documentation, but I got also different code sequences for the same key (?!).
Actually the echo string is more usefull than the return codes of sysgetkey(). Unfortunatly I was not able to pipe the echo from stdout or stderr in that case ("address REXX ... with ..." does not work.)
I would appreciate any hints or alternatives in order to fix or bypass this problem.
Thanks
I've just realized that the web gui destroyes the comments. Therefore I attached the REXX program, too.