Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

xhpnlioctl(3x) [hpux man page]

XHPNlioctl(3X)															    XHPNlioctl(3X)

NAME
XHPNlioctl - configure the 16-bit input environment SYNOPSIS
#include <X11/XHPlib.h> Status XHPNlioctl(display, status_in_out, command, arg) Display *display; XComposeStatus *status_in_out; int command; char *arg; DESCRIPTION
display Specifies the display status_in_out Specifies the XComposeStatus structure which this routine, along with XHPConvertLookup, will use to maintain information about this 16-bit input server. command specifies the command associated with this call. arg The meaning of arg is dependent upon the value of command. It is not always char *. Check with the documentation for communicating with the nlio process. This routine controls the environment for the 16-bit input server maintained in status_in_out. The contents of status_in_out must be zero before its use by either XHPConvertLookup or XHPNlioctl. Also, if multiple input servers are running at the same time, they must each be maintained by separate XComposeStatus parameters. Upon successful completion, this routine returns 0. If an error has occurred, -1 is returned and errno is set to indicate the error. The following commands are supported by this library. Other control commands may be supported by the NLIO input servers, see the documentation for the NLIO product for details. K16_ALT_ON If the current state of the keyboard is in the alternate character set the value of the integer pointed to by arg to one, else set the value of the integer pointed to by arg to zero. K16_EXEC_PROC Exec the 16-bit input server process associated with the keyboard mapping for display. The state information for this server will be maintained in status_in_out. If the server could not be started, -1 is returned and the external variable errno will contain the error for the last system call that XHPNlioctl called. The value of arg is ignored. K16_GET_ENCODING Get the encoding of the character to be returned. If the encoding is HP-15, set the value of the integer pointed to by arg to zero. If the encoding is EUC, set the value of the integer pointed to by arg to one. No error is returned. K16_GET_STATEKEYS Get the keysyms for the keys which control state for the Asian keyboards. The keys that are returned are those which control the state of NLIO (invoke/terminate) and those which control the state of the alternate keyboard (set/unset). The current values are returned in the K16_state structure. NoSymbol is returned for all values for non-Asian keyboards. The default settings for the Asian keyboards are contained in the following table. +-----------------------------+ |Japanese | +-----------------+-----------+ | set_alternate |XK_Meta_R | |unset_alternate |XK_Meta_R | | invoke_nlio |XK_Meta_L | |terminate_nlio |XK_Meta_L | +-----------------+-----------+ |Katakana | +-----------------+-----------+ | set_alternate |XK_Meta_R | |unset_alternate |XK_Meta_L | | invoke_nlio | NoSymbol | |terminate_nlio | NoSymbol | +-----------------+-----------+ |Korean, S_Chinese, T_Chinese | +-----------------+-----------+ | set_alternate | NoSymbol | |unset_alternate | NoSymbol | | invoke_nlio |XK_Meta_R | |terminate_nlio |XK_Meta_L | +-----------------+-----------+ A programming example follows. Display *display; XCompose compose; struct K16_state k16state; KeySym invoke_nlio, terminate_nlio; KeySym set_alternate, unset_alternate; XHPNlioctl (display, &compose, K16_GET_STATEKEYS, &k16state); invoke_nlio = k16state.invoke_nlio; terminate_nlio = k16state.terminate_nlio; set_alternate = k16state.set_nlio; unset_alternate = k16state.unset_nlio; K16_KILL_PROC Kill the 16-bit input server process which is being maintained in status_in_out. No error is returned. The value of arg is ignored. K16_NLIO_ON If the 16-bit input server is currently receiving characters, set the value of the integer pointed to by arg to one, else set the value of the integer pointed to by arg to zero. K16_SET_ENCODING Set the encoding of the character to be returned. If the value of the integer pointed to by arg is zero, the encoding becomes HP-15. If the value of the integer pointed to by arg is one, the encoding becomes EUC. No error is returned. K16_SET_STATEKEYS Set the keys which control state for the Asian keyboards. The keys that can be set are those which control the state of NLIO (invoke/terminate) and those which control the state of the alternate keyboard (set/unset). The keys are set by setting the proper flag and by specifying the keysym which controls a particular state in the K16_state structure. If the keysyms that set and unset a state are the same, then that key will be a toggle key. If both keysyms are set to NoSymbol then that functionality is effectively disabled. Note: no checking is made for the existence of keysyms on the current keyboard. Functionality can be enabled and disabled by the use of XChangeKeyboardMapping. If the current keyboard mapping for display is that for a non-Asian keyboard the error XHPINP_INVAL is returned. If the current keyboard is other than Japanese or Katakana and flags has K16_ALTSTATE set, -1 is returned and errno is set to EINVAL. If the current keyboard mapping is Katakana and flags has K16_NLIOSTATE set, -1 is returned and errno is set to EINVAL. A programming example follows. Display *display; XCompose compose; struct K16_state k16state; KeySym invoke_nlio, terminate_nlio; KeySym set_alternate unset_alternate k16state.flags = K16_NLIOSTATE | K16_ALTSTATE; k16state.invoke_nlio = invoke_nlio; k16state.terminate_nlio = terminate_nlio; k16state.set_alternate = set_alternate; k16state.unset_alternate = unset_alternate; XHPNlioctl (display, &compose, K16_SET_STATEKEYS, &k16state); ERRORS
XHPNlioctl will fail if: [EACCES] The user is trying to exec the input server and does not have execute permission for the input server. [EAGAIN] The user is trying to fork the input server and a system imposed limit for the number of processes would be exceeded. [EINVAL] An invalid parameter was passed to the routine. [EIO] An error occurred in communicating with the input server. [EMFILE] The user is trying to start up the input server and the maximum number of file descriptors is currently open. [ENOENT] The user is trying to exec the input server and the file does not exist. ORIGIN
Hewlett-Packard Company SEE ALSO
XGetKeyboardMapping(3X), XHPConvertLookup(3X), XHPInputChinese_s(3X), XHPInputChinese_t(3X), XHPInputJapanese(3X), XHPInputKorean(3X), XHPSetKeyboardMapping(3X) X Version 11 Release 5 XHPNlioctl(3X)
Man Page