Rebuild the terminfo for Wyse50


To start, it would be best to decompile the terminfo library definition for wyse50. First check the environment variable $TERMINFO. This points to the terminfo library being used, or if null, you are using the default system library which is
/usr/share/lib/terminfo

To decompile the terminfo, perform the following:


export TERM=wyse50
infocmp > wyse50.src



The file wyse50.src now contains the terminfo definition for the wyse50 terminal. It is likely that there will be no kf22, or any other function keys. It is possible to add them to this file, but it is difficult to know which values to specify as this is dependent upon the physical terminal being used. Unfortunately, the termcap definition doesn’t reveal this information. If we were to guess this, based on the system terminfo, it would probably be:
kf22=\E3

You may be able to generate a terminfo definition by using the captoinfo utility – simply point this at the termcap library you are using, i.e.:


captoinfo $INFORMIXDIR/etc/termcap > cap.src



It is, however, doubtful that this will help in terms of the fkey definitions.
Provided you are able to define the terminfo source adequately, you can use the utility ‘tic’ to compile the terminfo. Depending on the version of ‘Hydra4GL’ you have, there may be a copy in $QUERIXDIR/bin/tic – if this is the case, set your TERMINFO variable to $QUERIXDIR/lib/terminfo, and use only this copy of ‘tic’ to compile the sources. Please note, that if you do not have permission to write to the library, or there is some other irregularity, a terminfo database (~/.terminfo) will be implicitly created instead.
In some circumstances, fgl_getkey (under Informix) returns 2009 for Shift-F1, It would be possible that Informix is not actually interpreting the ‘Shift’, as 2009 is the standard code for the Insert key (unless this has been mapped to shift-f1 in the 4GL ‘OPTIONS’?).